hledger-lib-1.50.3: A library providing the core functionality of hledger

Safe Haskell | None
Language | GHC2021

Hledger.Reports.BudgetReport

Contents

- Tests

Synopsis

- type BudgetGoal = Change
- type BudgetTotal = Total
- type BudgetAverage = Average
- type BudgetCell = (Maybe Change, Maybe BudgetGoal)
- type BudgetReportRow = PeriodicReportRow DisplayName BudgetCell
- type BudgetReport = PeriodicReport DisplayName BudgetCell
- budgetReport :: ReportSpec -> BalancingOpts -> DateSpan -> Journal -> BudgetReport
- tests_BudgetReport :: TestTree

# Documentation

type BudgetGoal = Change Source #

type BudgetTotal = Total Source #

type BudgetAverage = Average Source #

type BudgetCell = (Maybe Change, Maybe BudgetGoal) Source #

A budget report tracks expected and actual changes per account and subperiod. Each table cell has an actual change amount and/or a budget goal amount.

type BudgetReportRow = PeriodicReportRow DisplayName BudgetCell Source #

A row in a budget report table - account name and data cells.

type BudgetReport = PeriodicReport DisplayName BudgetCell Source #

A full budget report table.

budgetReport :: ReportSpec -> BalancingOpts -> DateSpan -> Journal -> BudgetReport Source #

Calculate per-account, per-period budget (balance change) goals from all periodic transactions, calculate actual balance changes from the regular transactions, and compare these to get a `BudgetReport`. Unbudgeted accounts may be hidden or renamed (see journalWithBudgetAccountNames).

# Tests

tests_BudgetReport :: TestTree Source #