diff --git a/accounts/org/main-org.ledger b/accounts/org/main-org.ledger index 60329a2bca7426fae3f6f3c079d1f1ba59d55a9f..6ba276bb1cb6d7f67ddacad466020c382b18f764 100644 --- a/accounts/org/main-org.ledger +++ b/accounts/org/main-org.ledger @@ -21,11 +21,11 @@ 2012-05-03 Sir Moneybags ;Entity: Sir-Moneybags + ;Program: Main Org:Direct Fundraising ;Invoice: accounts/documentation/org/invoices/2012-05-30_moneybags-invoice_as-sent.txt Accrued:Accounts Receivable:Main Org $100,000.00 Income:Main Org:Donations $-100,000.00 ;IncomeType: Donations - ;Program: Main Org:Direct Fundraising 2012-07-05 J. Developer ;Entity: Developer-J diff --git a/npo-ledger-cli-tutorial.md b/npo-ledger-cli-tutorial.md index 8d92e98b345b0d408ccdd6b07b68dea8dce55a87..15f8ccf804a6b9b9aef72b36d87e0b46dc09b105 100644 --- a/npo-ledger-cli-tutorial.md +++ b/npo-ledger-cli-tutorial.md @@ -442,6 +442,29 @@ Each `Income:` account must have the following tags: * A [`Program:`](#program-tag) tag. +Reports For Various Situations +------------------------------ + +When data is well formed as specified herein, there are various quick reports +that can be used to verify certain conditions or issues with accounting. +Here are a few examples: + +### Verifying That An Invoice Is Paid + +Assume for this example that the shell variables `entity`, `program`, and +`invoice` are set as follows: + + $ entity=Sir-Moneybags; program='Main.*Org:.*Direct'; invoice=2012-05-30 +If the invoice was paid, this ledger command will have two lines of output, +and the second line will be a transaction on the payment date. If only one +line appears, it's the receivable accrual and we see the invoice is not paid. + + $ ledger -f accounts/books.ledger -V --sort d --limit 'tag("Entity") =~ /'$entity'/ and tag("Program") =~ /'$program'/ and tag("Invoice") =~ /'$invoice'/' reg /Accrued/ + +Alternatively, the following command will only have output if the invoice is unpaid: + + $ ledger -f accounts/books.ledger -V --limit 'tag("Entity") =~ /'$entity'/ and tag("Program") =~ /'$program'/ and tag("Invoice") =~ /'$invoice'/' bal /Accrued/ + Analysis of the Data --------------------