285 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			285 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| # multi-column balance reports
 | |
| 
 | |
| # 1. Here are the postings used in most tests below:
 | |
| hledgerdev -f data/balance-multicol.journal register
 | |
| >>>
 | |
| 2012/12/31                      (assets:checking)               10            10
 | |
| 2013/01/01                      (assets:checking)                1            11
 | |
| 2013/01/15                      (assets:checking)               -1            10
 | |
| 2013/02/01                      (assets:cash)                    1            11
 | |
| 2013/02/02                      (assets)                         1            12
 | |
| 2013/03/01                      (assets:checking)                1            13
 | |
| >>>=0
 | |
| 
 | |
| # 2. A period balance (flow) report. --no-total also works but isn't pretty.
 | |
| hledgerdev -f data/balance-multicol.journal balance -p 'monthly in 2013' --no-total
 | |
| >>>
 | |
| Change of balance (flow):
 | |
| 
 | |
|                  ||  2013/01/01-2013/01/31  2013/02/01-2013/02/28  2013/03/01-2013/03/31 
 | |
| =================++======================================================================
 | |
|  assets          ||                      0                      1                      0 
 | |
|  assets:cash     ||                      0                      1                      0 
 | |
|  assets:checking ||                      0                      0                      1 
 | |
| -----------------++----------------------------------------------------------------------
 | |
|                  ||                                                                      
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # 3. With --empty, includes leading/trailing empty periods
 | |
| #hledgerdev -f data/balance-multicol.journal balance -p 'quarterly in 2013' --empty
 | |
| hledgerdev -f - balance -p 'quarterly in 2013' --empty
 | |
| <<<
 | |
| 2012/12/31
 | |
|   (a)  10
 | |
| 2013/1/1
 | |
|   (a)  1
 | |
| 2013/3/1
 | |
|   (a)  1
 | |
| >>>
 | |
| Change of balance (flow):
 | |
| 
 | |
|    ||  2013/01/01-2013/03/31  2013/04/01-2013/06/30  2013/07/01-2013/09/30  2013/10/01-2013/12/31 
 | |
| ===++=============================================================================================
 | |
|  a ||                      2                      0                      0                      0 
 | |
| ---++---------------------------------------------------------------------------------------------
 | |
|    ||                      2                      0                      0                      0 
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # 4. A cumulative ending balance report. Column totals are the sum of
 | |
| # the highest-level displayed accounts (here, assets).
 | |
| hledgerdev -f data/balance-multicol.journal balance -p 'monthly in 2013' --cumulative
 | |
| >>>
 | |
| Ending balance (cumulative):
 | |
| 
 | |
|                  ||  2013/01/31  2013/02/28  2013/03/31 
 | |
| =================++=====================================
 | |
|  assets          ||           0           1           1 
 | |
|  assets:cash     ||           0           1           1 
 | |
|  assets:checking ||           0           0           1 
 | |
| -----------------++-------------------------------------
 | |
|                  ||           0           2           3 
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # 5. With the assets:cash account excluded.  As with a single-column
 | |
| # balance --flat report, or ledger's balance --flat, assets' balance
 | |
| # includes the displayed subaccount and not the excluded one.
 | |
| hledgerdev -f data/balance-multicol.journal balance -p 'monthly in 2013' --cumulative not:cash
 | |
| >>>
 | |
| Ending balance (cumulative):
 | |
| 
 | |
|                  ||  2013/01/31  2013/02/28  2013/03/31 
 | |
| =================++=====================================
 | |
|  assets          ||           0           1           1 
 | |
|  assets:checking ||           0           0           1 
 | |
| -----------------++-------------------------------------
 | |
|                  ||           0           1           2 
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # 6. A historical ending balance report.
 | |
| hledgerdev -f data/balance-multicol.journal balance -p 'monthly in 2013' --historical
 | |
| >>>
 | |
| Ending balance (historical):
 | |
| 
 | |
|                  ||  2013/01/31  2013/02/28  2013/03/31 
 | |
| =================++=====================================
 | |
|  assets          ||           0           1           1 
 | |
|  assets:cash     ||           0           1           1 
 | |
|  assets:checking ||          10          10          11 
 | |
| -----------------++-------------------------------------
 | |
|                  ||          10          12          13 
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # 7. With top-level accounts excluded. As always, column totals are the sum of
 | |
| # the highest-level displayed accounts, now assets:cash and assets:checking.
 | |
| hledgerdev -f data/balance-multicol.journal balance -p 'monthly in 2013' not:assets$
 | |
| >>>
 | |
| Change of balance (flow):
 | |
| 
 | |
|                  ||  2013/01/01-2013/01/31  2013/02/01-2013/02/28  2013/03/01-2013/03/31 
 | |
| =================++======================================================================
 | |
|  assets:cash     ||                      0                      1                      0 
 | |
|  assets:checking ||                      0                      0                      1 
 | |
| -----------------++----------------------------------------------------------------------
 | |
|                  ||                      0                      1                      1 
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # 8. cumulative:
 | |
| hledgerdev -f data/balance-multicol.journal balance -p 'monthly in 2013' not:assets$ --cumulative
 | |
| >>>
 | |
| Ending balance (cumulative):
 | |
| 
 | |
|                  ||  2013/01/31  2013/02/28  2013/03/31 
 | |
| =================++=====================================
 | |
|  assets:cash     ||           0           1           1 
 | |
|  assets:checking ||           0           0           1 
 | |
| -----------------++-------------------------------------
 | |
|                  ||           0           1           2 
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # 9. historical
 | |
| hledgerdev -f data/balance-multicol.journal balance -p 'monthly in 2013' --historical
 | |
| >>>
 | |
| Ending balance (historical):
 | |
| 
 | |
|                  ||  2013/01/31  2013/02/28  2013/03/31 
 | |
| =================++=====================================
 | |
|  assets          ||           0           1           1 
 | |
|  assets:cash     ||           0           1           1 
 | |
|  assets:checking ||          10          10          11 
 | |
| -----------------++-------------------------------------
 | |
|                  ||          10          12          13 
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # --depth
 | |
| 
 | |
| # 10. A flow report with depth limiting. The depth limit aggregates the three accounts as "assets".
 | |
| hledgerdev -f data/balance-multicol.journal balance -p 'monthly in 2013' --depth 1
 | |
| >>>
 | |
| Change of balance (flow):
 | |
| 
 | |
|         ||  2013/01/01-2013/01/31  2013/02/01-2013/02/28  2013/03/01-2013/03/31 
 | |
| ========++======================================================================
 | |
|  assets ||                      0                      2                      1 
 | |
| --------++----------------------------------------------------------------------
 | |
|         ||                      0                      2                      1 
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # 11. As above, but postings in the top-level assets account have been excluded.
 | |
| hledgerdev -f data/balance-multicol.journal balance -p 'monthly in 2013' --depth 1 assets:
 | |
| >>>
 | |
| Change of balance (flow):
 | |
| 
 | |
|         ||  2013/01/01-2013/01/31  2013/02/01-2013/02/28  2013/03/01-2013/03/31 
 | |
| ========++======================================================================
 | |
|  assets ||                      0                      1                      1 
 | |
| --------++----------------------------------------------------------------------
 | |
|         ||                      0                      1                      1 
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # 12. A cumulative balance report with depth limiting.
 | |
| hledgerdev -f data/balance-multicol.journal balance -p 'monthly in 2013' --depth 1 --cumulative
 | |
| >>>
 | |
| Ending balance (cumulative):
 | |
| 
 | |
|         ||  2013/01/31  2013/02/28  2013/03/31 
 | |
| ========++=====================================
 | |
|  assets ||           0           2           3 
 | |
| --------++-------------------------------------
 | |
|         ||           0           2           3 
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # 13. A historical balance report with depth limiting.
 | |
| hledgerdev -f data/balance-multicol.journal balance -p 'monthly in 2013' --depth 1 --historical
 | |
| >>>
 | |
| Ending balance (historical):
 | |
| 
 | |
|         ||  2013/01/31  2013/02/28  2013/03/31 
 | |
| ========++=====================================
 | |
|  assets ||          10          12          13 
 | |
| --------++-------------------------------------
 | |
|         ||          10          12          13 
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # 14. The three multicol balance report types again, this time with --tree
 | |
| hledgerdev -f data/balance-multicol.journal balance -p 'monthly in 2013' --tree
 | |
| >>>
 | |
| Change of balance (flow):
 | |
| 
 | |
|             ||  2013/01/01-2013/01/31  2013/02/01-2013/02/28  2013/03/01-2013/03/31 
 | |
| ============++======================================================================
 | |
|  assets     ||                      0                      2                      1 
 | |
|    cash     ||                      0                      1                      0 
 | |
|    checking ||                      0                      0                      1 
 | |
| ------------++----------------------------------------------------------------------
 | |
|             ||                      0                      2                      1 
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # 15.
 | |
| hledgerdev -f data/balance-multicol.journal balance -p 'monthly in 2013' --cumulative --tree
 | |
| >>>
 | |
| Ending balance (cumulative):
 | |
| 
 | |
|             ||  2013/01/31  2013/02/28  2013/03/31 
 | |
| ============++=====================================
 | |
|  assets     ||           0           2           3 
 | |
|    cash     ||           0           1           1 
 | |
|    checking ||           0           0           1 
 | |
| ------------++-------------------------------------
 | |
|             ||           0           2           3 
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # 16.
 | |
| hledgerdev -f data/balance-multicol.journal balance -p 'monthly in 2013' --historical --tree
 | |
| >>>
 | |
| Ending balance (historical):
 | |
| 
 | |
|             ||  2013/01/31  2013/02/28  2013/03/31 
 | |
| ============++=====================================
 | |
|  assets     ||          10          12          13 
 | |
|    cash     ||           0           1           1 
 | |
|    checking ||          10          10          11 
 | |
| ------------++-------------------------------------
 | |
|             ||          10          12          13 
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # 17. --date2 should work
 | |
| hledgerdev -f- balance --monthly --date2
 | |
| <<<
 | |
| 2014/1/1
 | |
|  (a)  1
 | |
| 
 | |
| 2014/2/1=2014/1/31
 | |
|  (b)  1
 | |
| 
 | |
| >>>
 | |
| Change of balance (flow):
 | |
| 
 | |
|    ||  2014/01/01-2014/01/31 
 | |
| ===++========================
 | |
|  a ||                      1 
 | |
|  b ||                      1 
 | |
| ---++------------------------
 | |
|    ||                      2 
 | |
| 
 | |
| >>>=0
 | |
| 
 | |
| # 18. All matched postings in the displayed intervals should be reported on.
 | |
| hledgerdev -f- balance -p 'monthly 2014/1/10-2014/2/20'
 | |
| <<<
 | |
| 2014/1/5
 | |
|  (before)  1
 | |
| 
 | |
| 2014/2/1
 | |
|  (within)  1
 | |
| 
 | |
| 2014/2/25
 | |
|  (after)  1
 | |
| 
 | |
| >>>
 | |
| Change of balance (flow):
 | |
| 
 | |
|         ||  2014/01/01-2014/01/31  2014/02/01-2014/02/28 
 | |
| ========++===============================================
 | |
|  after  ||                      0                      1 
 | |
|  before ||                      1                      0 
 | |
|  within ||                      0                      1 
 | |
| --------++-----------------------------------------------
 | |
|         ||                      1                      2 
 | |
| 
 | |
| >>>=0
 |