actualbudget / actualbudget/actual
[Bug]: Custom report conditions ignored when switching to data table view
- Dominant language
- TypeScript
- Stars
- 28.7k
- Forks
- 3k
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 65
Description
## What happened?
When a custom report has a **conditions/filter** set (e.g. Notes `contains` `#groceries`), the filter is applied correctly in graph views (AreaGraph, etc.) but is **silently ignored** when switching to the data table view. The last-used view mode also persists, so subsequent opens of the same report from a dashboard card open in data table mode with no filter applied.
- Expected: conditions apply in all view modes (graph and data table)
- Actual: conditions apply only in graph view; data table shows all transactions regardless of saved conditions
Screenshots below show the difference (AreaGraph filtered vs data table unfiltered).
## How can we reproduce the issue?
1. Create a custom report — e.g. Name: "Groceries", Graph: AreaGraph, add filter **Notes → contains → `#groceries`**
2. Save. Verify the AreaGraph chart shows only `#groceries`-tagged data ✓
3. Click the **data table icon** (⊞) to switch to table view
4. Observe: the table shows **all transactions** — the `contains` condition is not applied ✗
5. Navigate away (e.g. go to Budget, then back to Reports)
6. Click the same report card — it reopens in data table mode with no filter applied ✗
**Additional finding:** the `hasTags` operator is listed in `@actual-app/api`'s `disallowedOps` for custom report conditions, causing those conditions to be silently discarded entirely. We worked around this by using `contains` instead — but `contains` still fails in the data table view. This suggests condition handling may be implemented per-renderer rather than at the data layer.
## Where are you hosting Actual?
Docker (self-hosted)
## What browsers are you seeing the problem on?
Chrome
## Operating System
Linux
---
_Screenshots to follow in comments._
Contributor guide
Assessment
This issue has not been assessed yet.