Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Budgets are only set for current month #246

Closed
Amain opened this issue Apr 17, 2016 · 4 comments
Closed

Budgets are only set for current month #246

Amain opened this issue Apr 17, 2016 · 4 comments
Assignees
Labels
feature Requests for new stuff.

Comments

@Amain
Copy link

Amain commented Apr 17, 2016

After creating a (montly) budget, I can set a Budgetted value for that budget. However, this value is only applied to the (from) month selected in the date selector, lets say current month, and not transferred to budgets for future or past months. When importing historical data or when importing new data next month, I need to set all budget values manually for each month I want to import.

Its a good thing budgets can be re-set each month, but I'd would like to see an option to extend a budget value to future and past months. Normally budgets tend to have the same value for many consecutive months. And when importing historical data, it is to much work to set values for each budget for each month.

I noticed the 'repeat' column in budget_limits, however I can't find any button in the UI allowing to toggle this. As workarounds, can I set it to a value to have it repeated for new months? And can I simply generate/insert records for past months? Or do I need to update other tables as well?

@JC5
Copy link
Member

JC5 commented Apr 18, 2016

Firefly III used to be able to allow budgets to repeat over months, that's why the code is still there.

Unfortunately, it is no longer supported. With the ability to set Firefly to different time periods (weeks, months, quarters, etc), the ability to repeat a budget over an arbitrary time period becomes very difficult to build in a trustworthy way.

The current solution allows for most flexibility. A budget (table: budgets) has a limit (table: budget_limits) which has at most one budget limit "repetition" (table: limit_repetitions).

If you wish to generate multiple budgets in one go, you can enter multiple entries into budget_limits, each with the start date of the month you want it for. Create a corresponding entry in limit_repetitions, and you should be good to go.

Firefly has not been designed to restore historical data, which is why the support for such a thing is poor. I'll think about building something to support it.

@JC5 JC5 added this to the 3.9.0 milestone Apr 18, 2016
@JC5 JC5 self-assigned this Apr 18, 2016
@JC5 JC5 added the feature Requests for new stuff. label Apr 18, 2016
@Amain
Copy link
Author

Amain commented Apr 24, 2016

Ah, I can see why having budgets over arbitrary time periods, in combination with the filter date control might be hard to implement. However, for example when having 6 recurring monthly budgets, which I need to create each month manually, this would mean over a year time, I created / extended 12 * 6 = 72 budgets manually. Which is a bit to much I think. I must admit, I'm very lazy :-)

Another question, how arbitrary are the time periods for budgets supposed to be? Lets say I would like to assign a yearly budget to 'Vacations'. Can I do that? Or should I handle 'Vacation' type of budgets differently?

The UI currently seems to allow me to only create monthly budgets, with an arbitrary startdate.

For example I create a new budget starting on March 06. The budget_limits table shows:

amount repeats freq
2016-03-06 100.00 0 monthly

and limit_repeations:

startdate enddate amount
2016-03-06 2016-04-05 100.00

@JC5
Copy link
Member

JC5 commented Apr 25, 2016

Don't worry, I am just as lazy. Nevertheless, adjusting the budgets every month does give me little bit of control over my finances, every time again ;).

The current budget view (/budgets) is slanted towards monthly budgets. Most other pages don't really care, they can display any budget with any "length". I've openend budget #256 to make sure this will work flawlessly.

You should be able to create a yearly budget for Vacations. I'll have to get back to you as to how that should work. Your example should only start on the 6th if and only if the date range of Firefly was set to start on the 6th of the month. Was that the case?

@Amain
Copy link
Author

Amain commented Apr 25, 2016

Yes, I see the value in managing budgets periodically (monthly). That's actually what I intent to do for a while to get a better grip. Enforcing monthly entry might even help people keeping grip on finances.

Besides that, I'm going to annalize historical data and from that perspective get some information on spending patterns.

In response to your question, I indeed set the data range to the 6th of March.

@JC5 JC5 modified the milestones: one day, 3.9.0 May 15, 2016
@JC5 JC5 closed this as completed Oct 22, 2016
@JC5 JC5 removed this from the one day milestone Jan 8, 2018
@lock lock bot locked as resolved and limited conversation to collaborators Jan 24, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
feature Requests for new stuff.
Projects
None yet
Development

No branches or pull requests

2 participants