This forum has been archived. All content is frozen. Please use KDE Discuss instead.

[Budget] Split category's delta between multiple categories

Tags: None
(comma "," separated)
dberg918
Registered Member
Posts
16
Karma
0
OS
After doing some work on my budget by hand, I decided to see if I could use Skrooge's Budget Rules to help me manage my savings. In order to create a balanced budget, I created budget rules on the category for my salary to split it 4 ways: 40% into a category for Fixed expenses, 35% into a category for Flexible expenses, and the rest divided into 2 Savings subcategories (15% and 10%). Altogether it comes out to 100%, so the delta on the budget for my salary should be 0 after rules are processed. Period is set to Current since I want each month's salary divided up for that month's expenses, and Delta is set to Positive since salary is an income.

The rules don't work -- clicking "Process" does nothing -- unless there are already budgets set on these categories, so I set a monthly budget on each -- income and expense categories alike -- to 0. That way, the 0 budget on my salary category has a positive delta equal to my monthly income, which would be divided by the Budget Rules, and the 0 expense budgets would be automatically populated with the correct percentage of my income.

Unfortunately, when I tried to process the rules, the money was not distributed correctly. The Fixed category got the correct amount (40% of my income in the Corrected Budget column), but the Flexible category only received 21%, and the two Savings categories received about 5% and 3%.

I'm not sure if I'm running into a bug with the Budget Rules, or I'm simply trying to use them in a way they weren't intended for. The question is this: should it be possible to split a category's delta between multiple categories? If yes, then Skrooge contains a bug in the way it processes Budget Rules. If no, Skrooge shouldn't allow you to set multiple Budget Rules on one category.

This might be a problem because of my use of percentages. If the budget rules for that one category are executed one at a time, it might be giving me 40% of the 40% left in the delta instead of 40% of the original delta. However, I crunched those numbers too and they are still a bit off, so there's something weird going on in the code. Help would be appreciated!
User avatar
schunka
Registered Member
Posts
57
Karma
0
OS
Hello I've recently run into same problem, trying to solve probably same needs. By my point of view, this is a bug and not a desired functionality.
I would also appreciate knowing, in which order are the rules applied.
User avatar
smankowski
Moderator
Posts
1047
Karma
7
OS
Hi,

Rules are applied one after one.
So, if you have the following rules:
R1: Transferring 40%
R2: Transferring 35%
R3: Transferring 15%
R4: Transferring 10%

If you have 100€ to transfer than:
R1 will transfer 100*40%=40€ => Rest: 100-40=60€
R2 will transfer 60*35%=21€=> Rest: 60-21=39€
R3 will transfer 39*15%=5,85€
etc

I hope this will help you to well define the percentages.


Skrooge, a personal finances manager powered by KDE
Image - PayPal
User avatar
schunka
Registered Member
Posts
57
Karma
0
OS
Hello,
that is almost everything I've figured so far.
But, ...
Let's say rule for one category (call it Buterfly) which transfers some percentage to another one (Bee)
And another rule, which in case Bee is positive trasnfers percentage to third (Beetle)
There is in fact need for me to know which one goes first, and I cannot see any sorting posibility. Rules are sorted by settings in rules table. I hope this sorting does not have any impact on their real processing order.
Do you understand waht I'm trying to accomplish. I can describe it some more.

I know that order of rules for one category can be seen in Budget table overview and I also noticed that order of the rules for one category can be changed in very strange but possible way. When I have sorting set to "by category containing" in ascending way (in the rules table) When there is more rules for one category eg. input category I can manage order by setting the transfer rules accordingly. (I hope this description makes sense)

Also there is a option to transfer exact amount from one category to another and here comes another problem, that cannot be solved any possible way.
Let's say I've want to transfer exact amount to Buterfly in case Bee is positive but also only in case the positive delta is bigger than the amount .
To better illustrate the example, when my stocks earn some money (income > stocks) I want to allow myself to buy something nice (expenditure > other) but not too much just something little so the amount would be like 5 Euro. But I don't want to loose money so I want to allow this expenditure in my budget only in case my stock earn more than 5 Euro.
I hope you understand those cases and come up with some solutions or maybe some other time in ther version (which is 2.3 by the way)
User avatar
smankowski
Moderator
Posts
1047
Karma
7
OS
schunka wrote:Hello,
that is almost everything I've figured so far.
But, ...
Let's say rule for one category (call it Buterfly) which transfers some percentage to another one (Bee)
And another rule, which in case Bee is positive trasnfers percentage to third (Beetle)
There is in fact need for me to know which one goes first, and I cannot see any sorting posibility. Rules are sorted by settings in rules table. I hope this sorting does not have any impact on their real processing order.
Do you understand waht I'm trying to accomplish. I can describe it some more.

Hi schunka,

As demonstrated in my previous post, the order is important because a rule is applied on the result of the previous one.
Unfortunately, Skrooge doesn't allow to set the order of budget rules.

I can propose you to add sort feature exactly as done on "Search & Process".
Is this proposal make sens for you?
schunka wrote:I know that order of rules for one category can be seen in Budget table overview and I also noticed that order of the rules for one category can be changed in very strange but possible way. When I have sorting set to "by category containing" in ascending way (in the rules table) When there is more rules for one category eg. input category I can manage order by setting the transfer rules accordingly. (I hope this description makes sense)

Also there is a option to transfer exact amount from one category to another and here comes another problem, that cannot be solved any possible way.
Let's say I've want to transfer exact amount to Buterfly in case Bee is positive but also only in case the positive delta is bigger than the amount .
To better illustrate the example, when my stocks earn some money (income > stocks) I want to allow myself to buy something nice (expenditure > other) but not too much just something little so the amount would be like 5 Euro. But I don't want to loose money so I want to allow this expenditure in my budget only in case my stock earn more than 5 Euro.

I think there is no issue here.
If you want to transfer 5€ and the delta is 10€ then 5€ will be transfered.
If you want to transfer 5€ and the delta is 5€ then 5€ will be transfered.
If you want to transfer 5€ and the delta is 3€ then 3€ will be transfered.
schunka wrote:I hope you understand those cases and come up with some solutions or maybe some other time in ther version (which is 2.3 by the way)


Skrooge, a personal finances manager powered by KDE
Image - PayPal
User avatar
schunka
Registered Member
Posts
57
Karma
0
OS
Hello,
sorting feature like in search and process would be much appreciated.
But the stocks example was not as clear as I tought it would be.
What I meant was basically:
Code: Select all
if money_earned > 5:
    ammount = 5
    transfer_to(ammount, "expenditure > other")
else:
    do_nothing()

Actual behavior is not really bad, but doesn't satisfy all the needs I have.
Either way, thanks for all your work on the project.
User avatar
smankowski
Moderator
Posts
1047
Karma
7
OS
Hi,

Just to inform you that I committed in the git a modification to:
1- Allow sorting of rules
2- Display in tooltips of "Modified amount" the reasons of the modifications

This new feature will be available in Skrooge 2.5.0.
You can test it if you know how to build Skrooge.

Regards.


Skrooge, a personal finances manager powered by KDE
Image - PayPal
User avatar
schunka
Registered Member
Posts
57
Karma
0
OS
Hello,
I've find a moment to build a 2.5 BETA from git. And to my disapointment most of the promised things were missing.
Sorting of budget rules is only a table header for sorting rules by order, but no option to change the order of the rule itself.
Maybe I'm blind but I cannot see any tooltip regarding budgets.
I don't want to complain, but that is not what we've agreed to be the result of your changes.

To conclude this:
there is no possible way to change the order of the rules (the order is now visible though)

thanks in advance for next update
User avatar
smankowski
Moderator
Posts
1047
Karma
7
OS
Hi Schunka,

I don't understand, as you can see in following screen capture, there is a new column named "Order".
You can modify the execution order of rules by using the buttons on the right.
Image

After execution of rules, when a budget is modified, you can find the reason of modification on the tooltip of the budget like in this screen capture.
Image

What is missing?


Skrooge, a personal finances manager powered by KDE
Image - PayPal
User avatar
schunka
Registered Member
Posts
57
Karma
0
OS
Hello,
this I don't see on my build (git commit - c0f5b1326f1c ) both of your modifications should be there, but I cannot see them present in built skrooge.
I'll investigate more at home during weekend and let you know then.
User avatar
schunka
Registered Member
Posts
57
Karma
0
OS
Well, sorry for before.
The mistake was all mine. I've had wrong path to qt5-plugins, this leads to usage of old plugin, thus without the new feature.
It works OK, thanks again
User avatar
schunka
Registered Member
Posts
57
Karma
0
OS
Today I've also noticed curious little thing.
When my budget window is open, and I've choose to show current and previous month, only the current one show, yesterday it was OK. Could there be some hidden problem with the end of the month. Or is it a secret feature how to avoid problems with this borderline.
It could be easily reproduced by setting your system time (on 30.5. I se both april a nd may budgests - as expected and on 31.5. budget only for may is visible).
User avatar
smankowski
Moderator
Posts
1047
Karma
7
OS
This is a bug. I did a correction:
http://commits.kde.org/skrooge/1e9cfe60 ... 7b2d8427e7


Skrooge, a personal finances manager powered by KDE
Image - PayPal
dberg918
Registered Member
Posts
16
Karma
0
OS
Thanks for answering my question. Just to reiterate for other users out there: With Budget Rules, it is possible to split a category's delta between multiple categories correctly, but not using percentages.

I guess another solution could be to implement split budget rules in the same vein as split operations, which would allow a group of rules to be executed simultaneously instead of sequentially, but that may needlessly complicate the budgeting system, as this may be the only use case for such a feature.


Bookmarks



Who is online

Registered users: abc72656, Bing [Bot], daret, Google [Bot], lockheed, Sogou [Bot], Yahoo [Bot]