diff options
| author | Calvin Morrison <calvin@pobox.com> | 2025-12-27 19:26:21 -0500 |
|---|---|---|
| committer | Calvin Morrison <calvin@pobox.com> | 2025-12-27 19:26:21 -0500 |
| commit | 5cf763ea3ba2a89acfa5f24422cc71e0ff7fb35b (patch) | |
| tree | ef3541cf3650eb14a46b2a54f1b63b1351c08082 /database.h | |
| parent | 5e9b299dfe95a7f99f029802089c047a392eee3a (diff) | |
Add reconciliation system with checkpoints and adjustments
- Add Reconciliation transaction type that appears as visible rows
- Reconciliation checkpoints show expected vs calculated balance
- Red background if out of balance, green if balanced
- Description shows balance status (Balanced or Out of balance by .XX)
- Create Adjustment button appears when reconciliation is out of balance
- Adjustment transactions automatically created to match bank balance
- Reconciliations always sort last on their date
- Auto-recalculate all reconciliations when any transaction changes
- Persistent projection months setting (1-24 months, default 3)
- Persistent date range between sessions
- Fix projection regeneration to start from rule start date
- Fix duplicate projections when converting to actuals
- Grey out irrelevant fields when Reconciliation type selected
Diffstat (limited to 'database.h')
| -rw-r--r-- | database.h | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -29,6 +29,9 @@ public: bool updateRecurringRule(const RecurringRule &rule); bool deleteRecurringRule(int id); QList<RecurringRule> getAllRecurringRules(); + void regenerateProjectionsForRule(const RecurringRule &rule); + void deleteProjectionsForRule(int ruleId); + void regenerateAllProjections(); // Reconciliation bool convertToActual(int transactionId, double actualAmount); |
