Changeset - 6202489c0070
[Not reviewed]
0 1 0
Martin Michlmayr (tbm) - 5 years ago 2019-03-28 15:21:27
tbm@cyrius.com
Drop closing colon from tags

The syntax in ledger is tag: -- the actual tag is tag, not tag:.
The guide was inconsistent about that.
1 file changed with 27 insertions and 27 deletions:
0 comments (0 inline, 0 general)
npo-ledger-cli-tutorial.md
Show inline comments
...
 
@@ -199,14 +199,14 @@ $35.00, and the file
 
contains the receipt from that purchase.
 

	
 
#### Receipt Tag
 

	
 
The `Receipt:` tag refers to receipt of some sort.  Typically, this is a
 
The `Receipt` tag refers to receipt of some sort.  Typically, this is a
 
document that shows clear confirmation that the transaction has already
 
occurred.  The value of the `Receipt:` tag is always a valid pathname in the
 
occurred.  The value of the `Receipt` tag is always a valid pathname in the
 
repository to the document, [as described above](#documentation-tags).
 

	
 
Some examples of appropriate uses of the `Receipt:` are:
 
Some examples of appropriate uses of the `Receipt` are:
 

	
 
* a point-of-sale credit card receipt from a purchase, given by a cashier or
 
  sent via email after the purchase has occurred.
 

	
...
 
@@ -221,15 +221,15 @@ Some examples of appropriate uses of the `Receipt:` are:
 
* A pay advice document generated upon payment of an invoice.
 

	
 
#### Invoice Tag
 

	
 
The `Invoice:` tag refers to an actual invoice, either generated by the
 
The `Invoice` tag refers to an actual invoice, either generated by the
 
organization or received by the organization.  Typically, this is a document
 
that is a request for payment, rather than documenting an actual payment that
 
has occurred.  The value of the `Invoice:` tag is always a valid pathname in
 
has occurred.  The value of the `Invoice` tag is always a valid pathname in
 
repository to the document, [as described above](#documentation-tags).
 

	
 
Some examples of appropriate uses of the `Invoice:` tag are:
 
Some examples of appropriate uses of the `Invoice` tag are:
 

	
 
* an actual invoice as sent by a vendor to the organization.
 

	
 
* a request for payment sent by the organization to someone else.
...
 
@@ -240,16 +240,16 @@ Some examples of appropriate uses of the `Invoice:` tag are:
 
  expenses).
 

	
 
#### Statement Tag
 

	
 
The `Statement:` tag refers to any sort of written statement received from an
 
The `Statement` tag refers to any sort of written statement received from an
 
external party (or even perhaps generated internally) that provides document,
 
insight, or other information about the transaction.  The value of the
 
`Statement:` tag is always a valid pathname in the repository to the
 
`Statement` tag is always a valid pathname in the repository to the
 
document, [as described above](#documentation-tags).
 

	
 

	
 
Some examples of appropriate uses of the `Statement:` tag are:
 
Some examples of appropriate uses of the `Statement` tag are:
 

	
 
* bank statements, as received from the banking institution.
 

	
 
* written reports of travel.
...
 
@@ -283,10 +283,10 @@ In contrast to documentation tags, information tags can more traditionally be
 
considered pure "meta-data" for a ledger entry.
 

	
 
#### Entity Tag
 

	
 
The `Entity:` tag is required for many types of ledger entries.  The value of
 
the `Entity:` tag is a unique moniker that identifies the organization,
 
The `Entity` tag is required for many types of ledger entries.  The value of
 
the `Entity` tag is a unique moniker that identifies the organization,
 
company, person, or legal entity that is the external party for the
 
transaction.
 

	
 
Note that there is no database of these monikers, so typos can cause
...
 
@@ -298,10 +298,10 @@ Barring that, the
 
[integrity of your data should be periodically checked](#checking-integrity-of-a-tag).
 

	
 
#### IncomeType Tag
 

	
 
The `IncomeType:` tag is used for all `Income:` accounts.  This refers to the
 
type of income.  The value of the `IncomeType:` tag is always a string.
 
The `IncomeType` tag is used for all `Income` accounts.  This refers to the
 
type of income.  The value of the `IncomeType` tag is always a string.
 
Since this particular system is designed for USA non-profit entities who file
 
USA Form 990, the following `IncomeType` values are supported:
 

	
 
* `Donations`, which refers to standard charitable donations.
...
 
@@ -318,14 +318,14 @@ income types, or to change it entirely to handle use-cases other than USA
 
Form 990 filing.
 

	
 
#### TaxImplication Tag
 

	
 
The `TaxImplication:` tag is used for all `Asset:` accounts when the
 
The `TaxImplication` tag is used for all `Asset:` accounts when the
 
transaction includes a payment of $10.00 or more leaving the account.  This
 
tag catalogs any tax implications that might occur on outgoing funds.
 

	
 
The most important USA-related issue tracked by this tag are contractors who
 
must have annual 1099 and/or W2 issued.  An [`Entity:` tag](entity-tag) should always
 
must have annual 1099 and/or W2 issued.  An [`Entity` tag](entity-tag) should always
 
go along with a TaxImplication tag.
 

	
 
The possible values for this field are:
 

	
...
 
@@ -412,18 +412,18 @@ ledger itself via the configurations found in `config-tags.ledger` and
 
#### Expense Account Documentation
 

	
 
Each `Expenses:` account entry must be tagged with the following tags:
 

	
 
* One of: [`Invoice:`](#invoice-tag), [`Receipt:`](#receipt-tag), or
 
* One of: [`Invoice`](#invoice-tag), [`Receipt`](#receipt-tag), or
 
  [`Statement`](#statement-tag).  (The only exception to this rule: an entry
 
  does not need an `Invoice:`, `Receipt`, nor a `Statement` tag if the
 
  does not need an `Invoice`, `Receipt`, nor a `Statement` tag if the
 
  [payee was never charged](#never-charged-payee).)
 

	
 
* A [`Program:`](#program-tag) tag.
 
* A [`Program`](#program-tag) tag.
 

	
 
Expense accounts can have the following optional tag:
 

	
 
* A [`GrantLocation:`](#grantlocation-tag) tag.
 
* A [`GrantLocation`](#grantlocation-tag) tag.
 

	
 
#### NEVER CHARGED Payee
 

	
 
The only exception to the standard tagging requirement is when the payee has
...
 
@@ -461,22 +461,22 @@ thus deprecated.
 
#### Income Account Documentation
 

	
 
Each `Income:` account must have the following tags:
 

	
 
* One of: [`Invoice:`](#invoice-tag),
 
  [`PurchaseOrder:`](#purchase-order-tag),
 
  [`Statement:`](#statement-tag), or
 
* One of: [`Invoice`](#invoice-tag),
 
  [`PurchaseOrder`](#purchase-order-tag),
 
  [`Statement`](#statement-tag), or
 
  [`Contract`](#contract-tag).  Exceptions to this requirement are as follows:
 
     + the income generated from the transaction is less than $800, or
 
     + the `IncomeType` is `RBI` and the income is for a defined, public
 
       program (such as conference registration)
 

	
 
* An [`Entity:`](#entity-tag) tag, *iff.* the Income for the transaction is
 
* An [`Entity`](#entity-tag) tag, *iff.* the Income for the transaction is
 
  for more than $800.
 

	
 
* An [`IncomeType:`](#incometype-tag) tag.
 
* An [`IncomeType`](#incometype-tag) tag.
 

	
 
* A [`Program:`](#program-tag) tag.
 
* A [`Program`](#program-tag) tag.
 

	
 
Reports For Various Situations
 
------------------------------
 

	
...
 
@@ -536,17 +536,17 @@ track what programs are costing with commands like these:
 
FIXME: example output
 

	
 
### Checking Integrity of a Tag
 

	
 
[As mentioned](#entity-tag), the `Entity:` tag is one example among many
 
[As mentioned](#entity-tag), the `Entity` tag is one example among many
 
where the value is a wide range, but since Ledger CLI isn't backed by a more
 
complete ERP system, it's possible during data entry for typos to make a
 
serious problem.  One work around to this flaw is to periodically run a
 
command like:
 

	
 
    $ ledger -f accounts/books.ledger -F '%(tag("Entity"))\n' reg|sort|uniq|less
 

	
 
which will show all unique `Entity:` values currently in use.
 
which will show all unique `Entity` values currently in use.
 

	
 
Copyright and License of This File
 
----------------------------------
 

	
0 comments (0 inline, 0 general)