From 1f5ceb0db50df9ad0f9048ee02ad749507cbd737 Mon Sep 17 00:00:00 2001 From: John Wiegley Date: Sun, 25 Oct 2009 23:08:07 -0400 Subject: Added beginning draft of manual for 3.0 This is being kept in Scrivener format, for ease of writing. --- doc/Ledger.scriv/snapshots/7.snapshots | 552 +++++++++++++++++++++++++++++++++ 1 file changed, 552 insertions(+) create mode 100644 doc/Ledger.scriv/snapshots/7.snapshots (limited to 'doc/Ledger.scriv/snapshots/7.snapshots') diff --git a/doc/Ledger.scriv/snapshots/7.snapshots b/doc/Ledger.scriv/snapshots/7.snapshots new file mode 100644 index 00000000..3caecc9b --- /dev/null +++ b/doc/Ledger.scriv/snapshots/7.snapshots @@ -0,0 +1,552 @@ + + + + + $archiver + NSKeyedArchiver + $objects + + $null + + $class + + CF$UID + 37 + + NS.objects + + + CF$UID + 2 + + + + + $class + + CF$UID + 33 + + NS.keys + + + CF$UID + 3 + + + CF$UID + 4 + + + CF$UID + 5 + + + NS.objects + + + CF$UID + 6 + + + CF$UID + 7 + + + CF$UID + 35 + + + + Title + Text + Date + Untitled Snapshot + + $class + + CF$UID + 34 + + NSAttributes + + CF$UID + 10 + + NSDelegate + + CF$UID + 0 + + NSString + + CF$UID + 8 + + + + $class + + CF$UID + 9 + + NS.string + Ledger is an accounting tool with the moxie to exist. It provides no +bells or whistles, and returns the user to the days before user +interfaces were even a twinkling in their father's CRT. + +What it does offer is a double-entry accounting ledger with all the +flexibility and muscle of its modern day cousins, without any of the +fat. Think of it as the Bran Muffin of accounting tools. + +To use it, you need to start keeping a ledger. This is the basis of +all accounting, and if you haven't started yet, now is the time to +learn. The little booklet that comes with your checkbook is a ledger, +so we'll describe double-entry accounting in terms of that. + +A checkbook ledger records debits (subtractions, or withdrawals) and +credits (additions, or deposits) with reference to a single account: +the checking account. Where the money comes from, and where it goes +to, are described in the payee field, where you write the person or +company's name. The ultimate aim of keeping a checkbook ledger is to +know how much money is available to spend. That's really the aim of +all ledgers. + +What computers add is the ability to walk through these postings, +and tell you things about your spending habits; to let you devise +budgets and get control over your spending; to squirrel away money +into virtual savings account without having to physically move money +around; etc. As you keep your ledger, you are recording information +about your life and habits, and sometimes that information can start +telling you things you aren't aware of. Such is the aim of all good +accounting tools. + +The next step up from a checkbook ledger, is a ledger that keeps track +of all your accounts, not just checking. In such a ledger, you record +not only who gets paid---in the case of a debit---but where the money +came from. In a checkbook ledger, its assumed that all the money +comes from your checking account. But in a general ledger, you write +posting two-lines: the source account and target account. +@emph{There must always be a debit from at least one account for every +credit made to another account}. This is what is meant by +``double-entry'' accounting: the ledger must always balance to zero, +with an equal number of debits and credits. + +For example, let's say you have a checking account and a brokerage +account, and you can write checks from both of them. Rather than keep +two checkbooks, you decide to use one ledger for both. In this +general ledger you need to record a payment to Pacific Bell for your +monthly phone bill. The cost is $23.00, let's say, and you want to +pay it from your checking account. In the general ledger you need to +say where the money came from, in addition to where it's going to. +The transaction might look like this: + +@smallexample +9/29 BAL Pacific Bell $-200.00 $-200.00 + Equity:Opening Balances $200.00 +9/29 BAL Checking $100.00 $100.00 + Equity:Opening Balances $-100.00 +9/29 100 Pacific Bell $23.00 $223.00 + Checking $-23.00 $77.00 +@end smallexample + +The first line shows a payment to Pacific Bell for $23.00. Because +there is no ``balance'' in a general ledger---it's always zero---we +write in the total balance of all payments to ``Pacific Bell'', which +now is $223.00 (previously the balance was $200.00). This is done by +looking at the last transaction for ``Pacific Bell'' in the ledger, adding +$23.00 to that amount, and writing the total in the balance column. +And the money came from ``Checking''---a withdrawal of $23.00---which +leaves the ending balance in ``Checking'' at $77.00. This is a very +manual procedure; but that's where computers come in... + +The posting must balance to $0: $23 went to Pacific Bell, $23 came +from Checking. There is nothing left over to be accounted for, since +the money has simply moved from one account to another. This is the +basis of double-entry accounting: that money never pops in or out of +existence; it is always a posting from one account to another. + +Keeping a general ledger is the same as keeping two separate ledgers: +One for Pacific Bell and one for Checking. In that case, each time a +payment is written into one, you write a corresponding withdrawal into +the other. This makes it easier to write in a ``running balance'', +since you don't have to look back at the last time the account was +referenced---but it also means having a lot of ledger books, if you +deal with multiple accounts. + +Enter the beauty of computerized accounting. The purpose of the +Ledger program is to make general ledger accounting simple, by keeping +track of the balances for you. Your only job is to enter the +postings. If a posting does not balance, Ledger displays an +error and indicates the incorrect posting.@footnote{In some +special cases, it automatically balances this transaction for you.} + +In summary, there are two aspects of Ledger use: updating the ledger +data file, and using the Ledger tool to view the summarized result of +your transactions. + +And just for the sake of example---as a starting point for those who +want to dive in head-first---here are the ledger transactions from above, +formatting as the ledger program wishes to see them: + +@smallexample +2004/09/29 Pacific Bell + Payable:Pacific Bell $-200.00 + Equity:Opening Balances + +2004/09/29 Checking + Accounts:Checking $100.00 + Equity:Opening Balances + +2004/09/29 Pacific Bell + Payable:Pacific Bell $23.00 + Accounts:Checking +@end smallexample + +The account balances and registers in this file, if saved as +@file{ledger.dat}, could be reported using: + +@example +$ ledger -f ledger.dat balance +$ ledger -f ledger.dat register checking +$ ledger -f ledger.dat register bell +@end example + + + $classes + + NSMutableString + NSString + NSObject + + $classname + NSMutableString + + + $class + + CF$UID + 33 + + NS.keys + + + CF$UID + 11 + + + CF$UID + 12 + + + NS.objects + + + CF$UID + 13 + + + CF$UID + 30 + + + + NSParagraphStyle + NSFont + + $class + + CF$UID + 29 + + NSAlignment + 4 + NSLineHeightMultiple + 1.1000000238418579 + NSTabStops + + CF$UID + 14 + + + + $class + + CF$UID + 28 + + NS.objects + + + CF$UID + 15 + + + CF$UID + 17 + + + CF$UID + 18 + + + CF$UID + 19 + + + CF$UID + 20 + + + CF$UID + 21 + + + CF$UID + 22 + + + CF$UID + 23 + + + CF$UID + 24 + + + CF$UID + 25 + + + CF$UID + 26 + + + CF$UID + 27 + + + + + $class + + CF$UID + 16 + + NSLocation + 28 + + + $classes + + NSTextTab + NSObject + + $classname + NSTextTab + + + $class + + CF$UID + 16 + + NSLocation + 56 + + + $class + + CF$UID + 16 + + NSLocation + 84 + + + $class + + CF$UID + 16 + + NSLocation + 112 + + + $class + + CF$UID + 16 + + NSLocation + 140 + + + $class + + CF$UID + 16 + + NSLocation + 168 + + + $class + + CF$UID + 16 + + NSLocation + 196 + + + $class + + CF$UID + 16 + + NSLocation + 224 + + + $class + + CF$UID + 16 + + NSLocation + 252 + + + $class + + CF$UID + 16 + + NSLocation + 280 + + + $class + + CF$UID + 16 + + NSLocation + 308 + + + $class + + CF$UID + 16 + + NSLocation + 336 + + + $classes + + NSArray + NSObject + + $classname + NSArray + + + $classes + + NSParagraphStyle + NSObject + + $classname + NSParagraphStyle + + + $class + + CF$UID + 32 + + NSName + + CF$UID + 31 + + NSSize + 14 + NSfFlags + 16 + + Courier + + $classes + + NSFont + NSObject + + $classname + NSFont + + + $classes + + NSDictionary + NSObject + + $classname + NSDictionary + + + $classes + + KBWordCountingTextStorage + NSTextStorage + NSMutableAttributedString + NSAttributedString + NSObject + + $classname + KBWordCountingTextStorage + + + $class + + CF$UID + 36 + + NS.time + 267380388.667629 + + + $classes + + NSDate + NSObject + + $classname + NSDate + + + $classes + + NSMutableArray + NSArray + NSObject + + $classname + NSMutableArray + + + $top + + Snapshots + + CF$UID + 1 + + + $version + 100000 + + -- cgit v1.2.3