aboutsummaryrefslogtreecommitdiff
path: root/database.h
diff options
context:
space:
mode:
authorCalvin Morrison <calvin@pobox.com>2025-12-27 19:26:21 -0500
committerCalvin Morrison <calvin@pobox.com>2025-12-27 19:26:21 -0500
commit5cf763ea3ba2a89acfa5f24422cc71e0ff7fb35b (patch)
treeef3541cf3650eb14a46b2a54f1b63b1351c08082 /database.h
parent5e9b299dfe95a7f99f029802089c047a392eee3a (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.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/database.h b/database.h
index cdde765..0296675 100644
--- a/database.h
+++ b/database.h
@@ -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);