81 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			81 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
; An "envelope budget" assisted by auto postings.
 | 
						|
; From the "Planning/allocating budget" example at https://gist.github.com/ony/bbec599c0893e676b772559909b81de6.
 | 
						|
 | 
						|
; Envelope balances, representing the currently available funds in each budget category, 
 | 
						|
; are tracked as pseudo-accounts under "budget". 
 | 
						|
; Here we allocate some funds to the envelopes. These are imaginary, so unbalanced postings are fine:
 | 
						|
 | 
						|
2008/4/1 Budget for 2008q2
 | 
						|
    (budget:food)                 $1000
 | 
						|
    (budget:clothes)               $200
 | 
						|
    (budget:misc)                 $1000
 | 
						|
 | 
						|
; When you spend, a corresponding amount should be removed from the appropriate budget envelope.
 | 
						|
; You can record this manually, eg:
 | 
						|
;
 | 
						|
; 2008-04-15
 | 
						|
;   expenses:food     $10
 | 
						|
;   assets:checking  -$10
 | 
						|
;   (budget:food)    -$10
 | 
						|
 | 
						|
; Or you can do it automatically with auto postings, activated with --auto.
 | 
						|
; This is often recommended, as a labour saver.
 | 
						|
; Auto posting rules:
 | 
						|
 | 
						|
; for each posting to a clothes expense account,
 | 
						|
; add an auto posting removing the same amount from the clothes budget envelope.
 | 
						|
= expenses.*clothes
 | 
						|
    (budget:clothes)               *-1
 | 
						|
 | 
						|
; for each posting to a food or supplies expense account, 
 | 
						|
; remove the same amount from the food budget envelope.
 | 
						|
= expenses.*(food|supplies)
 | 
						|
    (budget:food)                  *-1
 | 
						|
 | 
						|
; for each posting to any other expense account,
 | 
						|
; remove the same amount from the misc budget envelope.
 | 
						|
= expenses: not:expenses.*(clothes|food|supplies)
 | 
						|
    (budget:misc)                  *-1
 | 
						|
 | 
						|
; Some transactions:
 | 
						|
 | 
						|
2008-04-15
 | 
						|
  expenses:food     $400
 | 
						|
  expenses:clothes  $300
 | 
						|
  assets:checking
 | 
						|
 | 
						|
2008-06-15
 | 
						|
  expenses:food     $600
 | 
						|
  assets:checking
 | 
						|
 | 
						|
 | 
						|
; Some reports:
 | 
						|
comment
 | 
						|
 | 
						|
Monthly changes in budget envelopes during the quarter:
 | 
						|
 | 
						|
$ hledger -f examples/budgeting/budget2.journal bal budget date:2008q2 --auto -M
 | 
						|
Balance changes in 2008Q2:
 | 
						|
 | 
						|
                ||   Apr  May    Jun 
 | 
						|
================++===================
 | 
						|
 budget:clothes || $-100    0      0 
 | 
						|
 budget:food    ||  $600    0  $-600 
 | 
						|
 budget:misc    || $1000    0      0 
 | 
						|
----------------++-------------------
 | 
						|
                || $1500    0  $-600 
 | 
						|
 | 
						|
Month-end balances of budget envelopes:
 | 
						|
 | 
						|
$ hledger -f examples/budgeting/budget2.journal bal budget date:2008q2 --auto -M -H
 | 
						|
Ending balances (historical) in 2008Q2:
 | 
						|
 | 
						|
                || 2008-04-30  2008-05-31  2008-06-30 
 | 
						|
================++====================================
 | 
						|
 budget:clothes ||      $-100       $-100       $-100 
 | 
						|
 budget:food    ||       $600        $600           0 
 | 
						|
 budget:misc    ||      $1000       $1000       $1000 
 | 
						|
----------------++------------------------------------
 | 
						|
                ||      $1500       $1500        $900 
 | 
						|
 |