summaryrefslogtreecommitdiff
path: root/src/report.cc
Commit message (Collapse)AuthorAgeFilesLines
* Fixes for compilation as C++0x codeJohn Wiegley2011-02-041-1/+1
|
* New command: org, for displaying Org-mode tablesJohn Wiegley2010-12-221-0/+10
|
* Added "top_amount" value expr functionJohn Wiegley2010-12-221-0/+24
|
* Minor simplifications to valexpr parserJohn Wiegley2010-09-051-0/+1
| | | | | The most significant change is the way CONS sequences are parsed, and that now instead of =/:=, the operators are ==/=.
* The "print" valexpr function no longer adds spacesJohn Wiegley2010-06-261-9/+2
|
* Added "format" value expression functionJohn Wiegley2010-06-241-0/+10
| | | | | | | | | This function evaluates formatting strings, returning a string. For example: format("%(amount)") This is equivalent to "to_string(amount)".
* Added "source" command, for executing valexpr filesJohn Wiegley2010-06-241-0/+2
|
* "only" now a report query modifier for --onlyJohn Wiegley2010-06-241-0/+5
| | | | This fits with "show" and "bold", etc.
* Added report query modifiers: for, since, untilJohn Wiegley2010-06-221-31/+39
| | | | | | | | | Now instead of ledger reg expense -p "this month", you can say: ledger reg expense for this month And as a shorthand for "for until this month", you can just say "until this month" or "since this month".
* Added new "bold" modifier to query expressionsJohn Wiegley2010-06-221-11/+13
| | | | | | | | | | | | | | For example: ledger bal assets bold checking Or you can use expressions: ledger bal assets bold '=total > 1000' This last is identical to saying: ledger bal -l 'account =~ /assets/' --bold-if='total > 1000'
* Added new --bold-if optionJohn Wiegley2010-06-221-0/+11
|
* bal was sometimes reporting empty accountsJohn Wiegley2010-06-211-5/+10
|
* Added new option --inject=KEY[,KEY...]John Wiegley2010-06-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If you have a typed metadata key which contains an amount, you can use --inject=KEY to inject a posting with that amount wherever a match occurs. There are two main forms of usage: 2010-06-18 Sample ; Key:: $100 Expenses:Food $100.00 Assets:Checking The command would be: ledger reg --inject=Key In the above, transactional form, a posting under the account "Key" will be injected before the first posting reported for this transaction. It's amount will be $100. This only happens once for the whole transaction. It is also possible to associate the key with a posting: 2010-06-18 Sample Expenses:Food $100.00 ; Key:: $100 Assets:Checking Now the injected posting is generated whenever that particular post is reported.
* Removed unused --unsorted optionJohn Wiegley2010-06-151-1/+0
|
* Revised how Ledger handles the "current year"John Wiegley2010-06-141-2/+2
| | | | | Now when the Y directive sets the current year for a region, it affects everything, as if the clock really were set back to that year.
* Removed unneeded debug codeJohn Wiegley2010-06-131-5/+0
|
* Completely reworked argument passing in expressionsJohn Wiegley2010-06-131-129/+89
|
* Improved value expression function 'commodity'John Wiegley2010-06-121-0/+8
| | | | | | Without arguments -- and in a posting -- it is equivalent to "commodity(amount)". Otherwise, it returns the commodity symbol of its argument.
* Untabified all source filesJohn Wiegley2010-06-111-228/+228
|
* Fixed the "generate" commandJohn Wiegley2010-06-101-8/+2
|
* New display flag AMOUNT_PRINT_ELIDE_COMMODITY_QUOTESJohn Wiegley2010-06-091-1/+1
| | | | | | | | This is used by reports like register and balance so that separated commodities without spaces in them needed be surrounded by quotes. It will still occur in most other places. Fixes #200 / F82CF11F-BFD9-4512-A562-202B04B68051
* Fixed interaction with -V/X and grouped postingsJohn Wiegley2010-06-091-0/+5
| | | | | | | | | | With -s, -M/Y/D, -n, and a few other flags, postings get "grouped" into meta-transactions that contain more postings than before. In all these cases, -V use the date of the *earliest* posting in that group, which makes little sense and caused breakages with -J. It now uses the latest date. Fixes #197 / 68EAF363-D0FE-4127-866E-A5AEBACB65D6
* A further simplification of -V and -XJohn Wiegley2010-06-071-1/+1
| | | | | | | | With -X COMM, all values are computed in terms of COMM, regardless. With -V, only secondary commodities will ever be computed, never primaries. Further, if a secondary commodities has an associated price, the valuation is done in terms of that price's commodity.
* amount_t::print and value_t::print now use flagsJohn Wiegley2010-06-071-4/+9
|
* Minor optimization of how non --empty is handledJohn Wiegley2010-06-071-5/+0
|
* Reworked the way that <Rounding> entries are shownJohn Wiegley2010-06-061-24/+26
| | | | Fixes #188 / 53BCED29-F3B9-4E02-9A35-6C739ABB9662
* Made "expr" command a synonym for "parse"John Wiegley2010-06-051-0/+2
|
* Added new command: "pricemap [DATE]"John Wiegley2010-06-041-0/+15
| | | | | | | | | | | | This outputs the pricing relationship of commodities in your data file, as of DATE (optional), using the DOT language. If you have graphviz installed, it can be viewed quite simply using: ledger pricemap | dotty - Each relationship in the graph shows the conversion factor to exchange one commodity for another, and the date at which this factor was determined.
* A little bit of code cleanupJohn Wiegley2010-06-041-10/+20
|
* Don't use --pager or --color with --outputJohn Wiegley2010-06-021-0/+7
|
* Minor optimizationJohn Wiegley2010-05-311-1/+2
|
* New: --group-by=EXPR and --group-title-format=FMTJohn Wiegley2010-05-301-34/+116
| | | | | | | | | | | | | | | | | | | | | The --group-by option allows for most reports to be split up into sections based on the varying value of EXPR. For example, to see register subtotals by payee, use: ledger reg --group-by=payee -s This works for separated balances too: ledger bal --group-by=payee Another interesting possibility is seeing a register of all the accounts affected by a related account: ledger reg -r --group-by=payee The option --group-title-format can be used to add a separator bar to the group titles. The option --no-titles can be used to drop titles altogether.
* Option --rounding inverted to --no-roundingJohn Wiegley2010-05-301-1/+1
|
* Added new option: --no-titlesJohn Wiegley2010-05-301-0/+1
|
* Added --rounding option, which is off by defaultJohn Wiegley2010-05-231-0/+1
| | | | | | | | The purpose of this option is to add special "<Rounding>" postings, to ensure that a regiter's running total is *always* the sum of its postings. Within --rounding, these adjustment postings are missing, which was the behavior in Ledger 2.x. It can be orders of magnitude slower to turn it on for large reports with many commodities.
* Fix to an interaction between --period and --sortJohn Wiegley2010-05-231-3/+2
| | | | Fixes 3AAB00ED-9904-4380-8988-16506B0AFE08
* Added new option --prepend-widthJohn Wiegley2010-05-221-7/+17
| | | | | | | | This is useful for making sure that the column containing the results of --prepend-format is a consistent width throughout the report (including those lines where it is not applied). Fixes 64F9D913-75E1-4830-A3D9-29B72442E68B
* Option --count sums payees, account, commoditiesJohn Wiegley2010-05-221-0/+1
|
* Added new commands: acounts, payees, commoditiesJohn Wiegley2010-05-221-1/+15
| | | | | | | | | | | | | These three reports simply dump an unordered list (with the exception of payees) shows all accounts, payees, and commodities represented in a given report. This can be used to easily generate per-entity report, for example: ledger payees | \ while read payee; do \ echo ; echo $payee ; \ ledger reg payee "$payee" ; \ done
* Added a simple print() value expression functionJohn Wiegley2010-05-081-0/+16
| | | | This is really for debugging more than anything else.
* Added new --meta and --meta-width optionsJohn Wiegley2010-03-171-4/+38
| | | | | | | | The usages are: --meta=<TAG> prepend value of TAG before every line --meta-width=<NUM> force the meta column to be NUM wide --meta=<TAG>:<NUM> shortcut that also applies --meta-width
* Rewrite the "print" command as a custom functionJohn Wiegley2010-03-081-16/+20
| | | | | There ended up being too many corner cases for the generalized formatter to handle.
* Fixed a problem with the "quoted" valexpr functionJohn Wiegley2010-03-051-2/+2
|
* Added some preliminary code for convert CSV to LedgerJohn Wiegley2010-03-051-0/+3
|
* Updated copyrights to 2003-2010John Wiegley2010-03-051-1/+1
|
* Renamed the "args" command to "query"John Wiegley2010-03-041-1/+5
|
* Added a --pivot=TAG optionJohn Wiegley2010-02-021-0/+1
| | | | | | This is equivalent to the following: --account='"TAG:" + tag(/TAG/)'
* Added a debug statement for report.predicateJohn Wiegley2010-02-021-2/+5
|
* Added a trim() value expression functionJohn Wiegley2009-11-251-0/+28
|
* Added options: --unrealized-gains and --unrealized-lossesAristid Breitkreuz2009-11-241-0/+2
| | | | | | | | | | | These options allow the user to specify what accounts names should be used for these two types of accounts. They are optional, and default to: --unrealized-gains "Equity:Unrealized Gains" --unrealized-losses "Equity:Unrealized Losses" These are intended to be set in one's ~/.ledgerrc file.