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
[Feedback]: Custom Reports #1918
Comments
Great work! It looks as if it must have been a huge task for which we are very grateful indeed. My main use will be of the Table view. As you say, the alignment of numbers (particularly larger numbers) in the table still needs some work and also this alignment seems inconsistent between various time-scale views. The "year to date" and "last year" options will be great additions! |
In my dream world I would also love to be able to click through the table entry to see the underlying transactions! |
Hidden category groups break the processing. The error below is what gets printed, but the core of the issue is that the categoryGroupCalcData ends up with a null entry for each hidden category.
|
“ Flipping between the 'Type' when in 'Time' mode crashes the app” |
Really happy to have this feature!
idea for the future that I had: net worth view which displays a breakdown of account balance. Ideally with an area chart |
Overall: super impressive work! This is a MASSIVE improvement to Actual. I will personally be using it loads as well! Thanks for all the hard work! My feedback (sorry for nitpicking):
|
When reporting on categories it would be great to have a select and deselect all button. Particularly the latter, In order to quickly narrow down the categories required for a particular report. |
Can you specify what part of the page you are referring to? |
“Can you specify what part of the page you are referring to?” |
Sorry there is an additional step in the sequence switch from Here is a clip from demo.actualbudget.org Recording.2023-11-18.181701.mp4 |
Can you check this on #1930? I put in a fix but can't test it since my budget isn't that big... |
My budget goes back to Dec 2019 so I tested this in Netlifly. I used "all time", in "table view" and in "time mode". Loading time changing from category to payee was 13 seconds in Safari, although no indication that loading was happening. |
PS: Thank you so much for adding in Year to Date and Last Year! |
Sadly it's still quite slow and doing these "glitches". Tricky to explain what I'm seeing visually.. if you added privacy mode for the Y axis - I could share a screen recording. |
Due to the way recharts handles YAxis tick labels I'm not sure I can use the "privacyFilter" implementation. I've used it everywhere else (tooltips, legends, etc) but the best I can do for Axis is replace the numbers with a static string variable. I chose '...' for now. Open to changing the string if there's a better or more consistant UI with how we do it elsewhere in the app. Cheers! |
Here you go: Screen.Recording.2023-11-21.at.08.12.28.mov |
I've added a loading indicator. Still not sure what to do to help speed that up though. Payees loading can be quite slow for larger SQL files. Also, not sure how to cancel current data load when something new is clicked - currently it just waits for first one to complete then loads the next one. Maybe make individual query files and call them via switch statement based on "mode" "groupBy" and "graphType" selections? |
I have also asked for feedback on this in the Project Reports discussion. My thoughts are then when the Expense view is selected in Reports this should show the net in each expense category, after any refunds. In turn, the Income view should only show Income categories. At present receipts into an expense category are shown as Income. Just wondering if this behaviour is intended? |
@carkom Im looking at one of my categories that is specifically for reimbursements and it isn't acting like you described on discord. I can select expenses only and get what is expected, but net and income views don't show the money coming into the category. My guess is that this is due to the income all being in the form of off-budget to on-budget transfers. Those don't seem to count towards the table data. |
Heya! I'm not sure which discord post you're referencing. I posted some suggestions on how it could work but wasn't saying that is how it currently does. For further understanding of what/how data is displayed. By default the report hides off-budget, hidden categories/groups, empty ($0) categories, and uncategorized transactions. You can choose to show any/all of this data by ticking the corresponding checkbox in the sidebar.
FYI, the app labels transfers as uncategorized transactions that have a "payee.transfer_acct" not equal to null. It shows these in the transactions list of the accounts pages but does not add them to any budget totals since they have no category. If you'd like to see income for an account select the table graph and Time/Account/Net for the sidebar choices. You can easily see all the income for that account in the "assets" column and all the expenses in the "debts" column. |
Just chipping in here but maybe I read the question wrongly? The off budget to on budget transfers seem to be key to this comment. They do not of course have a category on the off budget side of the transfer. However, on receipt into the on budget account that side would be categorised. is @youngcw in fact saying that these categorised inflows are not appearing as income in the Custom Reports OR as a net off against the expense? |
@Kidglove57 that was what I was trying to get at. The transfers don't get counted as income even though they are categorized in that reimbursement category. That category has a balance of zero on the budget. If I set the custom table report to "net" I only see the expenses and nothing shows up under "income". |
What browser? I'm on Firefox and it looks fine. |
Something minor I noticed is that a different icon (funnel) for "Filter" is used compared to other sections of actual. |
@carkom Awesome! You've done a lot of work on this and I've been using it a bunch lately for some future planning. Have you updated your original post of this thread with your implemented and may implement in the future? Are there any specific areas you think need testing out more than others? On weekly view(just a quick glance now): Currently the date in the header cuts off the day number when showing more than a couple of weeks, possibly wrap around the date in the header into a second line, or abbreviate the year to e.g. '24 ? (or people could use monthly view, hah) What are your thoughts on tweaking how the Live range "Last X months" works to always exclude the current month(and so go back 1 additional month), when interval = monthly? I'd consider how it's working now as a bug, but there may be other schools of thought on that. :) The reason I'm asking as I was trying to determine my monthly expenses for the last 12 whole calendar months and I found it a bit clunky having to use specific dates as the current method includes the current month. This means the data used is anywhere from 11.01 months to 11.999 months, but is averaged and totaled as though it was 12 whole months making the numbers inaccurate. |
Sorry, just to clarify. This is not a request for feature additions or visual changes. It's a bug bashing session, specifically looking for any areas that crash the app or parts of the feature that aren't working correctly. |
I am not aware of any bugs or issues currently. Cheers!
You'll need to specify more info (split, mode, graphtype, etc.) |
I understand your point and how you're trying to use the feature. I could see it being used both ways. Maybe something we could discuss after it's live? |
Derp, apologies: Graph: Data Table |
Hrm, changing how calculations and options work within an experimental feature is fair game, but once live it'll see much more use and there's a greater expectation of consistency. Not insurmountable, just cautious. :) That said it depends on the approach, for example if an additional option to 'Exclude partial* interval' was added**, then the point is moot. Any approach which is saved with the report would work as otherwise a 'last 12 months' report would have to done as a static range and updated each month. * Place holder wording to communicate thought Ultimately you're the one best placed to consider this point and the work involved for possible approaches so happy to defer to your judgement once you've had time to think it over. |
I don't see it on Chrome, Edge, or Brave. I do see it on Firefox. |
Any of these custom reports can be exported as CSV? |
The categories list disappears when switching to the area chart (but whatever was checked still applies). Same applies with the donut chart set to Payees. Is the category list supposed to disappear and theoretically disable? Because it is a quick and easy filter. Say for the donut graph, which payees got how much in the selected set of categories. |
I'm currently implementing an "Exclude current period", where it's supposed to ignore the current week or month, depending on interval, and I noticed this when using the Weekly interval: The first week and the last week in the table report are all zero for some reason, despite there being transactions. Same applies when I use my test budget on a Netlify deployment of #2677 to avoid my own changes. So it doesn't seem my own date fudgery is breaking it. --edit: |
Hey mate, I've already got this code ready in a saved branch. Cheers! |
I'm not able to duplicate this following your steps. Can anyone else confirm if these steps cause a crash? Need a 3rd party to verify or it might be a local issue. |
I can not reproduce this using #2684. Chrome Version 124.0.6367.62 (Official Build) (x86_64) on OSX 14.4.1 (23E224). |
I can reproduce this on Microsoft Edge. |
I've tried it on MS Edge, Firefox, Chrome, Brave and cannot reproduce. Seems to be an issue tied to the local machine rather than the app? |
Explanation from CoPilot: The error message from the DevTools console indicates a React Error #185. Here’s a breakdown of the issue: Maximum Update Depth: This error occurs when a React component exceeds the maximum update depth by repeatedly calling setState inside componentWillUpdate or componentDidUpdate1. |
Windows 11, I was using 124.0.6367.6 3 Updated to: Version 124.0.6367.119 (Official Build) (64-bit) - regular window, but clearing all browsing data, and still getting the crash. Googling "suddenly getting Error: Minified React error #185" it sounds like other apps have started seeing this happening recently, which suggests it's library or browser related rather than custom reports. E.g. If it's not something that can be fixed within Actual then I don't think it's a show stopper to prevent custom reports moving out of the feature flag. |
One thing that would make the pie/donut chart much more useful in some situations would be the option to deduct deposits from the category spending amount. This would account for large expenses that are reimbursed in parts. To make sure the category amount doesn't go positive, the amount can be clamped at 0, so that only amounts <$0 are represented. One example of this that greatly skews the chart is being the roommate who pays the rent from their account. |
Use filters? |
Wouldn't that be better fixed by implementing Net as a type for the pie/bar charts? |
That's what I suggested previously but another user pointed out that the "net" value runs the risk of being positive or negative. But long story short, yes, just clamp the value at zero. |
Thanks to everyone for their input in getting this merged. Thanks to the maintainers for the reviews. Anything not listed please feel free to add to the conversation. Cheers!
Update: moving completed items down and consolidating most recent feedback items
Known Issues:
Upcoming Additions:
UI suggestions:
***** Version 1 *****
Known Issues:
Upcoming Additions:
UI suggestions from reviewers (open to discussion, leave your comment!):
Backend planned additions/changes to improve code/functionality:
The text was updated successfully, but these errors were encountered: