Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Added "reported posts" into account xdata | John Wiegley | 2009-11-02 | 1 | -0/+15 | |
| | | | | | | | | | This is necessary because sometimes, a post from one account will get reported as though it were in another account (this happens with --budget, to show child account postings within their parent account). In that case, the account needs to remember which postings have been reported as being within it, so that it can add these amounts to its own total in the balance report. | |||||
* | Improved the way account temporaries are managed | John Wiegley | 2009-11-01 | 1 | -4/+3 | |
| | ||||||
* | Increased size of buffer used to split account names | John Wiegley | 2009-11-01 | 1 | -1/+1 | |
| | ||||||
* | Add a position_t object for tracking item positions | John Wiegley | 2009-10-30 | 1 | -1/+1 | |
| | | | | It is also optional, which is useful for generated items. | |||||
* | Added some additional assertion tests re: temps | John Wiegley | 2009-10-28 | 1 | -1/+3 | |
| | ||||||
* | Renamed two methods, for consistency's sake | John Wiegley | 2009-10-27 | 1 | -6/+6 | |
| | ||||||
* | Added a new "cleared" report | John Wiegley | 2009-10-27 | 1 | -0/+10 | |
| | | | | | | This is a balance report with three columns: Current balance | Cleared balance | Last cleared date | |||||
* | Redid the way temporaries are handled in filtering | John Wiegley | 2009-10-27 | 1 | -13/+22 | |
| | ||||||
* | Restored --percent option, added baseline test | John Wiegley | 2009-06-21 | 1 | -0/+15 | |
| | ||||||
* | Refinement to display of account balances | John Wiegley | 2009-06-15 | 1 | -2/+2 | |
| | | | | Fixes 5A03CFC3-1A76-4F93-A1FE-555F98438C5A | |||||
* | Enabled use of pre-compiled headers by default | John Wiegley | 2009-03-10 | 1 | -0/+2 | |
| | ||||||
* | Rewrote the balance report again, to fix --depth | John Wiegley | 2009-03-08 | 1 | -2/+2 | |
| | ||||||
* | Revised the ways statistics are computed | John Wiegley | 2009-03-06 | 1 | -11/+32 | |
| | | | | | | | It is no longer done in calc_posts, but recursively on each account. This allows value expressions to ask statistical questions, like "earliest cleared posting?" (TBD) from any specific account, computed lazily. | |||||
* | Changed the way that account balances are computed | John Wiegley | 2009-03-06 | 1 | -20/+137 | |
| | ||||||
* | Gather account details in a details_t structure | John Wiegley | 2009-03-03 | 1 | -6/+6 | |
| | ||||||
* | Normalized how account totals are calculated | John Wiegley | 2009-03-03 | 1 | -37/+11 | |
| | ||||||
* | The -B, -G, -V reports now show rounding amounts | John Wiegley | 2009-02-26 | 1 | -0/+9 | |
| | | | | | | | | | 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. | |||||
* | Fix for sensitive compilation environments. | Eugene Morozov | 2009-02-25 | 1 | -2/+2 | |
| | ||||||
* | Fixed the --gain option for balance reports | John Wiegley | 2009-02-25 | 1 | -0/+1 | |
| | ||||||
* | Create a new interactive_t helper class | John Wiegley | 2009-02-21 | 1 | -5/+4 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. | |||||
* | If an account's aggregate amount is null, return 0 | John Wiegley | 2009-02-19 | 1 | -1/+4 | |
| | ||||||
* | Added --flat option, to flatten the balance report | John Wiegley | 2009-02-17 | 1 | -8/+15 | |
| | ||||||
* | Rewrote how the balance command displays accounts | John Wiegley | 2009-02-17 | 1 | -17/+39 | |
| | | | | | | | | The previous method bent over backwards to try and avoid multiple passes through the account tree, but the result was a horribly complicated mess that never ceased to dredge up obscure bugs. The new scheme is a very, very simple two-pass algorithm, with multiple subpasses during the second pass for refining the output based on the report options. | |||||
* | If an account's "total" is empty, return 0 | John Wiegley | 2009-02-15 | 1 | -1/+4 | |
| | ||||||
* | Added account(_base) accessors to account_t | John Wiegley | 2009-02-15 | 1 | -0/+12 | |
| | ||||||
* | Added 'count' and 'subcount' props for accounts | John Wiegley | 2009-02-15 | 1 | -1/+21 | |
| | ||||||
* | Removed "total_cost" valexpr, and value_t::cost | John Wiegley | 2009-02-15 | 1 | -7/+0 | |
| | | | | | Since cost reports are now calculated by setting the amount_ expression, there is no need to track a separate "total cost" entity. | |||||
* | Use the report's amount_expr everywhere that computes an xact's amount. | John Wiegley | 2009-02-09 | 1 | -7/+4 | |
| | ||||||
* | Moved get_partial_name from format.cc into account_t, where it belongs. | John Wiegley | 2009-02-08 | 1 | -18/+22 | |
| | ||||||
* | Refer to empty expression operators as simply NULL. | John Wiegley | 2009-02-07 | 1 | -1/+1 | |
| | ||||||
* | Whitespace fix. | John Wiegley | 2009-02-05 | 1 | -0/+2 | |
| | ||||||
* | Largely removed all of Ledger's use of global variables, for the REPL's sake. | John Wiegley | 2009-02-04 | 1 | -7/+29 | |
| | ||||||
* | Removed the global references to session->report. | John Wiegley | 2009-02-03 | 1 | -4/+4 | |
| | ||||||
* | Inspired by Omari Norman, I've rewritten main.cc so it's easy to approach. | John Wiegley | 2009-01-31 | 1 | -2/+2 | |
| | ||||||
* | Increased copyright range to include 2009. | John Wiegley | 2009-01-20 | 1 | -1/+1 | |
| | ||||||
* | Added a function for account_t to get the account's total cost. | John Wiegley | 2009-01-19 | 1 | -0/+7 | |
| | ||||||
* | Factored common parts of entry_t and xact_t into new item_t | John Wiegley | 2008-09-19 | 1 | -4/+3 | |
| | ||||||
* | If a value expression lookup on an account object fails, defer to the current | John Wiegley | 2008-09-18 | 1 | -1/+3 | |
| | | | | session object. Transactions and entries already do this. | |||||
* | Don't use single code format characters anymore. Access to object details | John Wiegley | 2008-09-18 | 1 | -11/+5 | |
| | | | | will now always be done with "%(identifier)". | |||||
* | Added the "depth" value expression function for accounts. | John Wiegley | 2008-08-14 | 1 | -0/+9 | |
| | ||||||
* | The balance report is working again. | John Wiegley | 2008-08-10 | 1 | -2/+7 | |
| | ||||||
* | Basic balance reports are working again! | John Wiegley | 2008-08-10 | 1 | -20/+58 | |
| | ||||||
* | Moved around most of the files so that source code is in src/, documentation | John Wiegley | 2008-08-05 | 1 | -0/+198 | |
is in doc/, etc. |