summaryrefslogtreecommitdiff
path: root/src/report.h
Commit message (Collapse)AuthorAgeFilesLines
* Output "@ AMOUNT" cost in the print reportJohn Wiegley2009-02-241-0/+2
|
* Removed the largely useless --performance optionJohn Wiegley2009-02-241-1/+0
|
* The Great Renaming, Part IIJohn Wiegley2009-02-231-22/+22
| | | | | The last commit did not contain the majority of changes because of a slight mishap. This contains the real changeset.
* Restore the --gain option, for showing gain/lossJohn Wiegley2009-02-231-1/+19
|
* Added --revalued-total option, used by --gainJohn Wiegley2009-02-231-0/+13
| | | | | This option sets the total by which revalued transactions are determined. Only needed if the display total is not appropriate.
* Added get_at and is_seq valexpr functionsJohn Wiegley2009-02-231-0/+2
| | | | These are for dealing with sequences.
* Removed unused member keep_details_t::keep_baseJohn Wiegley2009-02-231-2/+1
|
* Many fixes to both --market and --exchangeJohn Wiegley2009-02-231-1/+1
|
* Many fixes to --market and --exchangeJohn Wiegley2009-02-221-2/+2
| | | | Also, --exchange now accepted multiple, comma-separated commodities.
* --exchange option now accepts multiple commoditiesJohn Wiegley2009-02-221-2/+2
| | | | They must be separated by a comma, and all whitespace is ignored.
* Added --exchange (-x) optionJohn Wiegley2009-02-221-5/+15
| | | | | | | This is like -V, except it lets you specify the goal commodity to report in terms of, for example: reg -x CAD
* Fixed the way values are justified for printingJohn Wiegley2009-02-221-17/+19
|
* Changed --colors to --color, to match GitJohn Wiegley2009-02-221-11/+11
|
* Restored the --invert optionJohn Wiegley2009-02-221-1/+4
|
* Removed unused --totals optionJohn Wiegley2009-02-221-2/+0
| | | | This option was for outputting <total> elements in 2.x's XML output.
* Added a new --colors option, for terminal funJohn Wiegley2009-02-211-17/+24
| | | | | | | | | The following colors are applied in the balance and register reports: GREEN To a date, if it occurs in the future BOLD If a payee name relates to an uncleared entry BLUE For account names RED For negative values
* Removed an unused class: format_entriesJohn Wiegley2009-02-211-0/+2
|
* Use more general scrub valexpr function in formatsJohn Wiegley2009-02-211-41/+38
|
* Create a new interactive_t helper classJohn Wiegley2009-02-211-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The purpose of this class is much like Emacs' (interactive) form: it allows a value expression function to declare exactly how many arguments, and of what type, it intends to receive. It then offers type-safe access to theese arguments in a consistent manner. An example value expression function definition in C++: value_t fn_foo(call_scope_t& scope) { // We expect a string, an integer, and an optional date interactive_t args(scope, "sl&d"); std::cout << "String = " << args.get<string>(0) << "Integer = " << args.get<long>(1) << std::endl; if (args.has(2)) // was a date provided? std::cout << "Date = " << args.get<date_t>(2) << std::endl; return NULL_VALUE; } There is also an in_context_t<T> template, which finds the context type T in the current scope hierarchy. The in_context_t then also acts as a smart pointer to reference this context object, in addition to serving the same duty as interactive_t. This combination of intent is solely for the sake of brevity. value_t fn_bar(call_scope_t& scope) { in_context_t<account_t> env(scope, "sl&d"); std::cout << "Account name = " << env->fullname() << "String arg = " << env.get<string>(0) << std::endl; return NULL_VALUE; } As you can see here, 'env' acts as a smart pointer to the required context, and an object to extract the typed arguments.
* Added --start-of-week option, used with --weeklyJohn Wiegley2009-02-211-0/+1
| | | | | For example, --start-of-week=monday can be used to report weeks that begin on Mondays.
* 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 the --deviation optionJohn Wiegley2009-02-211-1/+3
|
* Restored --forecast, now also --forecast-whileJohn Wiegley2009-02-211-1/+1
|
* Enabled --current optionJohn Wiegley2009-02-201-1/+3
|
* Strip amounts displayed in the csv reportJohn Wiegley2009-02-201-1/+1
|
* Removed unused --cache optionJohn Wiegley2009-02-201-1/+0
|
* Restored the --basis optionJohn Wiegley2009-02-201-1/+16
|
* Added --no-total optionJohn Wiegley2009-02-201-0/+2
| | | | This simply omits the final total in the balance report, nothing more.
* Don't use auto-widths for widths explicitly givenJohn Wiegley2009-02-201-10/+20
|
* Rewrote the equity command, which is working againJohn Wiegley2009-02-201-4/+1
| | | | | | 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.
* Use the 'market' function, not 'market_value'John Wiegley2009-02-191-2/+2
|
* Added a new --columns= optionJohn Wiegley2009-02-191-0/+2
|
* The sequence -M -p 2004 now equals -p 2004 -MJohn Wiegley2009-02-191-57/+54
|
* Restored the -j and -J optionsJohn Wiegley2009-02-191-10/+7
|
* Moved init of options to the options themselvesJohn Wiegley2009-02-191-9/+69
|
* Improved how register reports are formattedJohn Wiegley2009-02-191-4/+26
| | | | | | | | | | | | As a result, --wide is working again, and --wide-register-format has been removed. Also, the following new options are recognized, for controlling per-column formatting: --date-width NUM --payee-width NUM --account-width NUM --amount-width NUM --total-width NUM
* Added --flat option, to flatten the balance reportJohn Wiegley2009-02-171-0/+1
|
* The option --cost is now an alias for --basisJohn Wiegley2009-02-171-1/+0
|
* Added new --set-acount and --set-payee optionsJohn Wiegley2009-02-161-0/+2
| | | | | | 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-1/+4
| | | | | | | | | | | | | | | 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 several unused value and param warningsJohn Wiegley2009-02-161-4/+4
|
* Moved around some functions for clarityJohn Wiegley2009-02-161-11/+0
|
* The -n option for bal command is working againJohn Wiegley2009-02-161-3/+3
| | | | | The fix was that when appending new predicates, enclosed both sides of the AND with parentheses.
* Made several of the filters more context awareJohn Wiegley2009-02-151-2/+3
| | | | | This resolves certain issues where value expressions were not being looked up within their full context.
* Normalized handling of several report optionsJohn Wiegley2009-02-151-58/+64
|
* Re-enabled the --format (-F) optionJohn Wiegley2009-02-151-0/+6
|
* The "xact" variable now returns null for accountsJohn Wiegley2009-02-151-0/+3
|
* Split up session_t::reread_journal_files()John Wiegley2009-02-151-1/+2
| | | | | You now call session_t::close_journal_files() followed by session_t::read_journal_files().
* Change a few calls to on() to use set_expr()John Wiegley2009-02-151-6/+5
|
* Parse '/' in an operator context as "div"John Wiegley2009-02-151-1/+1
|