summaryrefslogtreecommitdiff
path: root/src/chain.cc
Commit message (Collapse)AuthorAgeFilesLines
* Corrected a typoJohn Wiegley2011-07-031-3/+3
|
* Rename dow_posts to day_of_week_posts, to be clearerJohn Wiegley2010-06-201-3/+3
|
* Subsantial fixes and improvements to budgetingJohn Wiegley2010-06-191-2/+2
| | | | | | | | | 1. A bounded budget "from DATE to DATE" will now generate entries throughout that entire range, if it is triggered. 2. An unbounded budget begins, as before, in the timeframe of the reported posting which triggered it, but now continues until the present date.
* Added new option --inject=KEY[,KEY...]John Wiegley2010-06-181-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-6/+0
|
* Untabified all source filesJohn Wiegley2010-06-111-59/+59
|
* Minor optimization of how non --empty is handledJohn Wiegley2010-06-071-6/+6
|
* Reworked the way that <Rounding> entries are shownJohn Wiegley2010-06-061-13/+21
| | | | Fixes #188 / 53BCED29-F3B9-4E02-9A35-6C739ABB9662
* New: --group-by=EXPR and --group-title-format=FMTJohn Wiegley2010-05-301-59/+67
| | | | | | | | | | | | | | | | | | | | | 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 --rounding option, which is off by defaultJohn Wiegley2010-05-231-1/+2
| | | | | | | | 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.
* The --pivot=X option now only matches the tag "X"John Wiegley2010-03-171-1/+1
|
* Do not implicitly sort register outputJohn Wiegley2010-03-171-0/+2
| | | | The switches the default back to the same as 2.x, which is --unsorted.
* Updated copyrights to 2003-2010John Wiegley2010-03-051-1/+1
|
* Added a --pivot=TAG optionJohn Wiegley2010-02-021-1/+11
| | | | | | This is equivalent to the following: --account='"TAG:" + tag(/TAG/)'
* Added an --unrealized option, for use with bal -VJohn Wiegley2009-11-191-7/+12
| | | | | | When this option is on, then in balance report which show market values, any gains or losses in value will be balanced into a pair of accounts called Equity:Unrealized Gains and Equity:Unrealized Losses.
* Don't auto-sort transactions for the balance reportJohn Wiegley2009-11-191-4/+0
|
* Changed several pointers to references in filtersJohn Wiegley2009-11-191-8/+1
|
* Renamed bool controlling running total calculationsJohn Wiegley2009-11-181-1/+1
| | | | | | It used to be "account_wise", since it only happens for non-account-wise reports. Now it's called just "calc_running_total", so anyone can request it.
* Changed only_preliminaries to for_accounts_reportJohn Wiegley2009-11-181-4/+4
|
* Added --date, similar to --account and --payeeJohn Wiegley2009-11-111-0/+5
| | | | | | | This lets you do things like store a date as the value of a tag, then run: ledger --date='has_tag("Foo") ? to_date(tag("Foo")) : date' reg
* Redesigned the expr_t, predicate_t, query_t classesJohn Wiegley2009-11-091-16/+16
|
* Renamed --set-reported-account to just --accountJohn Wiegley2009-11-061-35/+4
| | | | | | | This fits better with the --amount and --total options, which both change the amount and total used for calculation. Same with --account: it happens after filtering, but before calculation so that balance reports look as you'd expect.
* New: --set-reported-account, --set-reported-payeeJohn Wiegley2009-11-011-0/+11
|
* Added a --forecast-years optionJohn Wiegley2009-10-311-1/+5
| | | | | This sets how many years of forecasting Ledger will do before it terminates the attempt.
* Moved ownership of master account into journal_tJohn Wiegley2009-10-301-7/+7
| | | | The journal_t now completely represents the data part of a session.
* Sort by default unless --unsorted is selectedJohn Wiegley2009-10-281-0/+8
|
* Fixed many compiler warnings from g++ 4.4John Wiegley2009-10-251-4/+4
|
* Enabled use of pre-compiled headers by defaultJohn Wiegley2009-03-101-0/+2
|
* Implemented --unround using value expressionsJohn Wiegley2009-03-061-5/+3
|
* Removed the --totals optionJohn Wiegley2009-03-051-4/+2
|
* Reduced the #include dependency tree to a minimumJohn Wiegley2009-03-041-1/+3
|
* Normalized how account totals are calculatedJohn Wiegley2009-03-031-5/+5
|
* Added an --unround option, to show full precisionJohn Wiegley2009-02-271-0/+4
|
* The -B, -G, -V reports now show rounding amountsJohn Wiegley2009-02-261-1/+4
| | | | | | | | | This way, if the running total is off by a penny or two due to rounding of one or more commodities in the account, the user will see it. This commit also reorganizes the testing code a bit, which I did after adding the ninth test series (ConfirmTests), to validate the new rounding code.
* The Great Renaming, Part IIJohn Wiegley2009-02-231-57/+57
| | | | | The last commit did not contain the majority of changes because of a slight mishap. This contains the real changeset.
* Added --revalued-total option, used by --gainJohn Wiegley2009-02-231-4/+5
| | | | | This option sets the total by which revalued transactions are determined. Only needed if the display total is not appropriate.
* Many fixes to both --market and --exchangeJohn Wiegley2009-02-231-9/+9
|
* Restored the --invert optionJohn Wiegley2009-02-221-4/+0
|
* Added a new --exact optionJohn Wiegley2009-02-211-0/+1
| | | | | | | | | The purpose of this option is that usually when you do a --monthly periodic report, you see dates ranges from the first day of each month, to the last day. With --exact, the first day of each range will be the date of the first transaction found in that range, and likewise with the end of the range. Essentially it "contracts" the reported period dates to reflect the exact begin and end dates.
* Restored --forecast, now also --forecast-whileJohn Wiegley2009-02-211-2/+10
|
* Rewrote the equity command, which is working againJohn Wiegley2009-02-201-1/+3
| | | | | | The old implementation used an account formatter, and was very specialized. The new is done as a transaction filter, and works along with everything else, eliminating bugs special to the equity report.
* Don't sort or subtotal xacts for account reportsJohn Wiegley2009-02-191-20/+20
|
* Improved the --collapse filterJohn Wiegley2009-02-171-10/+13
| | | | | | | | | | It now takes the --display and --only predicates into account, so that it never appears to be collapsing single transactions. There are cases where there are multiple transactions, but the display or only predicate filters them out, so that if collapse didn't consider this, the user would wonder why a single transaction was being collapsed -- since they'd never see that collapse saw more than two.
* Added new --set-acount and --set-payee optionsJohn Wiegley2009-02-161-6/+26
| | | | | | These fully generalize the previous --payee-as-account and such options, which, for example, is now implemented to be the same as saying, "--set-account payee".
* Added several new reporting optionsJohn Wiegley2009-02-161-0/+6
| | | | | | | | | | | | | | | To help with gathering specific reports: - --payee-as-account copies the entry's payee field to the account, allowing the subtotal report to show unique payees for each period. - --comm-as-account copies the transaction's amount's commodity to the account. - --code-as-account copies the entry's code to the account Also created aliases for some of these options, for conistency's sake: - --commodity-as-payee is now an alias for --comm-as-payee - --commodity-as-account is now an alias for --comm-as-account
* Fixed the --head and --tail optionsJohn Wiegley2009-02-161-3/+6
|
* Made several of the filters more context awareJohn Wiegley2009-02-151-6/+12
| | | | | This resolves certain issues where value expressions were not being looked up within their full context.
* Don't apply all filters for account-wise reportsJohn Wiegley2009-02-151-32/+38
| | | | This creates its own problems; instead, only most are used.
* Improved handling of --empty optionJohn Wiegley2009-02-151-1/+2
| | | | | | For example, in period reports null transactions are only generated for empty periods if --empty is used. Otherwise, the presence of such transactions can get confusing.