Changeset - 85016f37549a
[Not reviewed]
0 1 0
Bradley Kuhn (bkuhn) - 9 years ago 2013-04-29 19:15:10
bkuhn@ebb.org
Basic organizational expense accounts, with a tester function for assert.

Note that Expense account entries need to be tagged with an Invoice, Receipt,
or Statement tag (those tag declarations will be added in next commit).

payee with "NEVER CHARGED"
==========================

The only exception is when the payee has been modified to indicate that the
expense was "NEVER CHARGED". This was a special-case we encountered where we
were expecting something, they never invoiced us, and it turns out the thing
to be invoiced for never happened.

Typically, we'd just remove the entry from the Ledger file, and allow the VCS
to log the fact that we thought we'd be charged and weren't. However, in
this case, the expense had been post-audit and therefore was a permanent
fixture on our books. Changing the payee allowed it to pass checks.

However, going forward, we'd likely never enter anything the ledger UNTIL we
had real proof via an Invoice, Receipt or Statement that showed the Expense
did/should occur.
1 file changed with 28 insertions and 0 deletions:
0 comments (0 inline, 0 general)
accounts/config/config-npo.ledger
Show inline comments
...
 
@@ -28,6 +28,34 @@ account Asset:Checking
 
   note Checking account for entire organization
 
   assert commodity == "$"
 

	
 
; Organizational accrual accounts
 

	
 

	
 
; Organization Expense Accounts
 

	
 
; NOTE: the payee =~ test is *not* included herein and must be cut-and-pasted
 
;       to the assert in ever Expense account because of the following bug:
 
;               http://bugs.ledger-cli.org/show_bug.cgi?id=953
 

	
 
define expenseChecker() = (tag("Receipt") !~ /^\s*$/ or tag("Invoice") !~ /^\s*$/ or tag("Statement") !~ /^\s*$/)
 
; or payee =~ /NEVER CHARGED/
 

	
 
account Expense:Main Org:Office Supplies
 
    assert expenseChecker() or payee =~ /NEVER CHARGED/
 
    note Main Organization's Office Supplies and Sundries
 

	
 
account Expense:Main Org:Payroll:Salary
 
    assert expenseChecker() or payee =~ /NEVER CHARGED/
 
    note Main Organization's Staff Salaries
 

	
 
account Expense:Main Org:Payroll:Benefits
 
    assert expenseChecker() or payee =~ /NEVER CHARGED/
 
    note Main Organization's Staff Benefits
 

	
 
account Expense:Main Org:Phones
 
    assert expenseChecker() or payee =~ /NEVER CHARGED/
 
    note Main Organization's Phone Expenses
 

	
 
account Expense:Main Org:Occupancy
 
    assert expenseChecker() or payee =~ /NEVER CHARGED/
 
    note Main Organization's Occupancy for Office Space and the like
0 comments (0 inline, 0 general)