[Bug]: Template every works with weeks, but not months or years with "by" #1655

Closed
opened 2026-02-28 19:49:52 -06:00 by GiteaMirror · 8 comments
Owner

Originally created by @Mikhail773 on GitHub (Dec 9, 2024).

Verified issue does not already exist?

  • I have searched and found no existing issue
  • I will be providing steps how to reproduce the bug (in most cases this will also mean uploading a demo budget file)

What happened?

You can repeat every x week, but not every x months. In the documentation and in practice we can use both of these examples with success.
#template 10 repeat every week starting 2025-01-03
#template 10 repeat every week starting 2025-01-03 up to 80

However, when trying to do the same with months the template errors
#template 500 by 2025-03 repeat every 6 months
#template 500 by 2025-03 repeat every 6 months up to 600
Alternatives given do not satisfy the need.
When trying with months it requires you state "by" , but that may not always be what you want. Say you want to frontload a budget in January to cover Jan-Mar for $600. You wouldn't want $200 each month which is what by would give you. For some reason weeks let's you frontload, but it's not a viable alternative to months since 12 weeks isn't equal to months.

Where are you hosting Actual?

NAS

What browsers are you seeing the problem on?

Firefox, Chrome, Safari, Microsoft Edge, Desktop App (Electron), Other

Operating System

Linux

Originally created by @Mikhail773 on GitHub (Dec 9, 2024). ### Verified issue does not already exist? - [X] I have searched and found no existing issue - [X] I will be providing steps how to reproduce the bug (in most cases this will also mean uploading a demo budget file) ### What happened? You can repeat every x week, but not every x months. In the documentation and in practice we can use both of these examples with success. `#template 10 repeat every week starting 2025-01-03` `#template 10 repeat every week starting 2025-01-03 up to 80` However, when trying to do the same with months the template errors `#template 500 by 2025-03 repeat every 6 months` `#template 500 by 2025-03 repeat every 6 months up to 600` Alternatives given do not satisfy the need. When trying with months it requires you state "by" , but that may not always be what you want. Say you want to frontload a budget in January to cover Jan-Mar for $600. You wouldn't want $200 each month which is what by would give you. For some reason weeks let's you frontload, but it's not a viable alternative to months since 12 weeks isn't equal to months. ### Where are you hosting Actual? NAS ### What browsers are you seeing the problem on? Firefox, Chrome, Safari, Microsoft Edge, Desktop App (Electron), Other ### Operating System Linux
GiteaMirror added the bug label 2026-02-28 19:49:52 -06:00
Author
Owner

@youngcw commented on GitHub (Dec 9, 2024):

Is there a bug here or are you requesting a new kind of template?

@youngcw commented on GitHub (Dec 9, 2024): Is there a bug here or are you requesting a new kind of template?
Author
Owner

@Mikhail773 commented on GitHub (Dec 9, 2024):

I'm not certain on the intent of the creators. It's strange to me that the syntax fails, but feel free to call it a new template if it works better.

@Mikhail773 commented on GitHub (Dec 9, 2024): I'm not certain on the intent of the creators. It's strange to me that the syntax fails, but feel free to call it a new template if it works better.
Author
Owner

@youngcw commented on GitHub (Dec 9, 2024):

Its not clear to me what you are trying to accomplish. As far as I can tell from your description the templates are working fine, but not doing what you want them to do.

A by template has an implied "up to" by its nature of reaching a certain level over time. So an explicit up to isn't allowed with that type, thus the errors.

@youngcw commented on GitHub (Dec 9, 2024): Its not clear to me what you are trying to accomplish. As far as I can tell from your description the templates are working fine, but not doing what you want them to do. A by template has an implied "up to" by its nature of reaching a certain level over time. So an explicit up to isn't allowed with that type, thus the errors.
Author
Owner

@Mikhail773 commented on GitHub (Dec 9, 2024):

There may have been a communication error on my end.
#template 500 starting 2025-03 repeat every 6 months
It should of been starting not by

@Mikhail773 commented on GitHub (Dec 9, 2024): There may have been a communication error on my end. `#template 500 starting 2025-03 repeat every 6 months` It should of been starting not by
Author
Owner

@youngcw commented on GitHub (Dec 9, 2024):

Are you saying you want to budget an amount, not every month, but every few months? That example with "500 starting..." isn't an available template.

So
March - 500
Apr - 0
May - 0
...
Aug - 0
Sep - 500
?

Is there a reason you want to budget all at once and not spread it out over all months?

One work around for now, would be to use the copy template and have it copy from 6 months before. You would have to get it started manually, but then after the first few months it can run on its own.

@youngcw commented on GitHub (Dec 9, 2024): Are you saying you want to budget an amount, not every month, but every few months? That example with "500 starting..." isn't an available template. So March - 500 Apr - 0 May - 0 ... Aug - 0 Sep - 500 ? Is there a reason you want to budget all at once and not spread it out over all months? One work around for now, would be to use the copy template and have it copy from 6 months before. You would have to get it started manually, but then after the first few months it can run on its own.
Author
Owner

@Mikhail773 commented on GitHub (Dec 9, 2024):

That is exactly what I am saying. The use case is slightly niche, but here it goes.
I have an gifts budget that I like to set quarterly. The reason for this is that it allows me to chunk birthdays and holidays easier. But in the holidays I find spending can occur in October, November, or December depending on the sales. So I frontload October so that if I do all my shopping in October or November I am covered.

@Mikhail773 commented on GitHub (Dec 9, 2024): That is exactly what I am saying. The use case is slightly niche, but here it goes. I have an gifts budget that I like to set quarterly. The reason for this is that it allows me to chunk birthdays and holidays easier. But in the holidays I find spending can occur in October, November, or December depending on the sales. So I frontload October so that if I do all my shopping in October or November I am covered.
Author
Owner

@youngcw commented on GitHub (Dec 9, 2024):

You maybe could get that to work with a by spend template and have the by be the start of the period instead of the end of the period. So instead of by December, go for by October and then repeat every few months.

The copy template could work too. So: #template copy from 3 months ago, and optionally add in a #template 0 up to 500 or whatever you want to limit the category to.

If you would like to have an extra-monthly template, kinda like how the weeks work, feel free to put in a feature request for one.

Ill close this as its not a bug.

@youngcw commented on GitHub (Dec 9, 2024): You maybe could get that to work with a by spend template and have the by be the start of the period instead of the end of the period. So instead of by December, go for by October and then repeat every few months. The copy template could work too. So: `#template copy from 3 months ago`, and optionally add in a `#template 0 up to 500` or whatever you want to limit the category to. If you would like to have an extra-monthly template, kinda like how the weeks work, feel free to put in a feature request for one. Ill close this as its not a bug.
Author
Owner

@Mikhail773 commented on GitHub (Dec 9, 2024):

Looks like copy works. I think having that syntac working is logical, but given this is experimental to begin with and I have a workaround I won't ask for a feature

@Mikhail773 commented on GitHub (Dec 9, 2024): Looks like copy works. I think having that syntac working is logical, but given this is experimental to begin with and I have a workaround I won't ask for a feature
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/actual#1655