hledger-1.11: Command-line interface for the hledger accounting tool

Safe HaskellNone
LanguageHaskell2010

Hledger.Cli.CompoundBalanceCommand

Description

Common helpers for making multi-section balance report commands like balancesheet, cashflow, and incomestatement.

Synopsis

Documentation

data CompoundBalanceCommandSpec Source #

Description of a compound balance report command, from which we generate the command's cmdargs mode and IO action. A compound balance report command shows one or more sections/subreports, each with its own title and subtotals row, in a certain order, plus a grand totals row if there's more than one section. Examples are the balancesheet, cashflow and incomestatement commands.

Compound balance reports do sign normalisation: they show all account balances as normally positive, unlike the ordinary BalanceReport and most hledger commands which show incomeliabilityequity balances as normally negative. Each subreport specifies the normal sign of its amounts, and whether it should be added to or subtracted from the grand total.

Constructors

CompoundBalanceCommandSpec 

Fields

data CBCSubreportSpec Source #

Description of one subreport within a compound balance report.

compoundBalanceCommandMode :: CompoundBalanceCommandSpec -> Mode RawOpts Source #

Generate a cmdargs option-parsing mode from a compound balance command specification.

compoundBalanceCommand :: CompoundBalanceCommandSpec -> CliOpts -> Journal -> IO () Source #

Generate a runnable command from a compound balance command specification.