summaryrefslogtreecommitdiffstats
path: root/doc/en/details-ledgers.docbook
blob: 18f216692dcc6d68d5613dd0ea361ec36ff55310 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
<?xml version="1.0" encoding="UTF-8"?>
<chapter id="details.ledgers">
<chapterinfo>
  <authorgroup>
    <author>
      <firstname>Michael</firstname>
      <othername>T.</othername>
      <surname>Edwardes</surname>
      <affiliation>
	<address><email>mte@users.sourceforge.net</email></address>
      </affiliation>
    </author>
    <author>
      <firstname>Roger</firstname>
      <surname>Lum</surname>
      <affiliation>
	<address><email>rogerlum@gmail.com</email></address>
      </affiliation>
    </author>
  </authorgroup>
  <date>2009-07-23</date>
  <releaseinfo>1.0</releaseinfo>
</chapterinfo>

<title>Ledgers</title>

<sect1 id="details.ledgers.view">
<title>The Ledger View</title>

<para>
  The Ledger view is where most of the functionality of &kappname; lies.  This
  view is for examining and entering transaction data in the various
  accounts. The view is split into three main areas: the filter area, the
  transaction list, and the input area.
</para>

<para>
  This view allows for several key actions: searching and viewing transactions,
  entering new transactions, and editing or deleting existing
  transactions. Other functionality includes modifying account details and
  reconciling the account.
</para>
  
<para>
	<screenshot>
	<mediaobject>
	<imageobject>
	<imagedata fileref="ledgerview-numbered.png" format="PNG" />
	</imageobject>
	<textobject>
	<phrase>Ledger View</phrase>
	</textobject>
	</mediaobject>
	</screenshot>
</para>

<para>
  The view has three elements:
</para>

<itemizedlist>
  <listitem><para>The filter area</para></listitem>
  <listitem><para>The transaction list</para></listitem>
  <listitem>
    <para>
      The transaction input form, which may or may not appear, depending upon
      your configuration.
    </para>
  </listitem>
</itemizedlist>

<sect2>
<title>The filter area</title>

<para>
	<screenshot>
	<mediaobject>
	<imageobject>
	<imagedata fileref="accountdropdown.png" format="PNG" />
	</imageobject>
	<textobject>
	<phrase>Filter area</phrase>
	</textobject>
	</mediaobject>
	</screenshot>
</para>
	
<para>
  You can select an account via the account dropdown list at the top of the view
  area.  Note that depending upon the type of the account the <link
  linkend="details.ledger.transactionform">transaction input form</link> at the
  bottom of the view changes.
</para>

<para>
  To the right of the account dropdown list, are two additional fields. The
  search box acts as a filter on the transactions that are shown in the list
  view. Only transactions that include the text typed in the search box are
  displayed. The text specified can be in any of the fields of the transaction.
  The status field is a dropdown list. Only transactions of the type selected in
  that dropdown are displayed.
</para>

</sect2>

<sect2>
<title>The transaction list</title>

<para>
	<screenshot>
	<mediaobject>
	<imageobject>
	<imagedata fileref="translist.png" format="PNG" />
	</imageobject>
	<textobject>
	<phrase>Transaction list</phrase>
	</textobject>
	</mediaobject>
	</screenshot>
</para>
	
<para>
  After you have entered a transaction, it is displayed in the transaction list.
  You can also change transaction properties or even create new transactions
  directly in the list.  In the transactions list, the default arrangement of
  transactions is sorted by date with the most recent transaction on the bottom.
  Clicking the Right Mouse Button on the header of the transaction list brings
  up a dialog that allows you to change the sort order of the transactions. You
  can change the default sort order in the <link
  linkend="details.settings.register.sorting">Sorting tab</link> section of the
  <link linkend="details.settings">&kappname; Settings</link> Chapter.
</para>
</sect2>

<sect2>
<title>The transaction input form</title>

<para>
  The exact layout of the bottom area of the ledger view depends on your
  configuration and the type of account being displayed.  However, it generally
  includes fields for all the details of a single transaction, as well as
  buttons for various actions that can apply to a transaction.  It is described
  in more detail in the following sections.
</para>
</sect2>
</sect1>

<sect1 id="details.ledger.transactions">
<title>Entering Transactions</title>

<para>
  There are two methods of entering transactions into the ledger: using the
  transaction input form and entering the data directly into the transaction
  list.  The transaction input form is displayed by default and this is the
  method we will discuss first.
</para>

<para>
  The fields in the input area match the information fields in the transactions
  list. Additional fields include the Memo field, for a more detailed
  description of the transaction, and a Category selection. The Split button
  allows you to split the transaction into multiple categories.
</para>
</sect1>

<sect1 id="details.ledger.transactionform">
<title>Using the transaction input form</title>

<para>
	<screenshot>
	<mediaobject>
	<imageobject>
	<imagedata fileref="transactionform.png" format="PNG" />
	</imageobject>
	<textobject>
	<phrase>Transaction Form</phrase>
	</textobject>
	</mediaobject>
	</screenshot>
</para>
	
<para>
  The transaction input form at the bottom of the ledger view is the interface
  for creating transactions.
</para>

<para>
  Depending upon the type or method of transaction you wish to enter there are
  several tabs available on the transaction form.  Click on the tab that best
  describes your transaction (deposit, transfer, or withdrawal) and the form
  will load several fields ready for your input.
</para>

<para>
  Please note that the actual transaction method is not used directly by
  &kappname; but is purely for grouping/reporting purposes.
</para>

<para>
  If you are unsure which method to choose simply use Deposit for any money
  going into the account, Withdrawal for money coming out of the account, and
  Transfer for money moving from one account to another.  The transaction
  methods and the differences between them are discussed in more detail
  elsewhere.
</para>

<para>
  Select the transaction method by clicking on one of the tabs.
</para>

<sect2>
<title>The fields of a transaction</title>

<para>
  Enter the information using the following notes on the available fields.  Note
  that many fields have 'Auto Completion' turned on.  That is, if you start
  typing, &kappname; will offer alternatives matching the characters you have
  entered so far.  To select an entry click on it using the mouse or keyboard,
  or if your entry is not listed keep typing to add the new value.  The next
  time you type the value in, &kappname; will find it for you after the first
  few characters have been input.
</para>

<sect3>
<title>The Payee</title>

<para>
  The Payee is who the money came from/to.  If the payee is a new entry
  &kappname; will ask if you wish to add this to the list of Payees.  Any other
  information related to a payee or payer, such as address details can be
  updated in the Payees view later.
</para>
</sect3>

<sect3>
<title>The Category</title>

<para>
  The Category associates a transaction with an income or expense category for
  accounting and reporting purposes, and enables you to group certain
  transactions. Type the name of the category into the required field.  If you
  have entered the category and it does not exist then &kappname; will ask if
  you want to create a new one.
</para>

<para>
  If you wish to associate parts of the transaction with different categories,
  &kappname; can let you do that.  An example transaction might be a cash
  machine withdrawal of 50 of which you use 10 on food, 20 on beer and 20 as
  spare cash.  The transaction will therefore be assigned three categories:
  Food, Beer, and Cash.  To do this, you need to use <link
  linkend="details.ledgers.split">Split Transactions</link>, which is described
  in more detail below.
</para>

<para>
  See the special <link linkend="reference.widgets">&kappname; fields</link>
  section for more information on how to use this field.
</para>
</sect3>

<sect3>
<title>The Memo</title>

<para>
  A multi-line memo can be entered if you wish to help you remember what the
  transaction was for.
</para>
</sect3>

<sect3>
<title>The Check Number</title>

<para>
  The check number can be entered if needed.  Note that the check number can
  always be visible if desired.  This is configured in the Settings dialog.
</para>
</sect3>

<sect3>
<title>The Date</title>

<para>
  The transaction's posting date must be entered to specify when the transaction
  took place.  See the special <link linkend="reference.widgets">&kappname;
  fields</link> section for more information on how the date input field can be
  used to make entering dates quicker and easier.
</para>
</sect3>

<sect3>
<title>The Amount</title>

<para>
  Finally, enter the transaction amount into the required field. Note that a
  simple calculator can be displayed, either by clicking the icon to the right
  of the amount field, or by entering the % character into the field, or by
  entering a formula, as in <emphasis>12 + 3</emphasis>. When entering the plus
  sign, the calculator will be opened.
</para>

<para>
  When you are satisfied that all the fields have been filled in correctly,
  click on <guibutton>Enter</guibutton>. If you accidentally press or click on
  <guibutton>Enter</guibutton> before you have finished entering all the data,
  click on <guibutton>Edit</guibutton> to resume entering the data.
</para>
</sect3>
</sect2>
</sect1>

<sect1 id="details.ledger.direct">
<title>Directly inputting transactions into the list</title>

<para>
	<screenshot>
	<mediaobject>
	<imageobject>
	<imagedata fileref="transactionform-off.png" format="PNG" />
	</imageobject>
	<textobject>
	<phrase>Direct Transaction Entry</phrase>
	</textobject>
	</mediaobject>
	</screenshot>
</para>

<para>
  The second method of entering transactions into the ledger involves editing
  the transaction list itself directly.
</para>

<para>
  To do this you must first let &kappname; know that you don't want to use the
  transaction form by opening the settings dialog and unchecking the
  <guilabel>Show transaction form</guilabel> option.
</para>

<para>
  This is performed by selecting <guimenu>Settings</guimenu>
  <guimenuitem>Configure &kappname;</guimenuitem> from the menu bar and
  selecting the <guiicon><inlinemediaobject><imageobject><imagedata
  fileref="ledgers_view.png"/></imageobject></inlinemediaobject>
  Register</guiicon> icon from the list on the left. The option to uncheck is
  labeled <guilabel>Show transaction form</guilabel>. When finished click on
  <guibutton>OK</guibutton> to be ready to directly enter transactions.
</para>

<sect2>
<title>Starting the edit</title>

<para>	
  To enter a new transaction into the register you can now either click on an
  empty entry, press <keycombo action="simul">&Ctrl;&Insert;</keycombo>, or
  click <guibutton>New</guibutton> at the foot of the window. The
  <keycap>Up</keycap> and <keycap>Down</keycap> arrow keys let you navigate
  through the list.  After pressing <keycap>Enter</keycap> or double clicking on
  an entry, the transaction list displays the fields required to enter the
  transaction and waits for input.
</para>

<para>
  To move through the fields press the <keycap>Tab</keycap> key and when done
  press <keycap>Enter</keycap> to save the changes or <keycap>Esc</keycap> to
  cancel.
</para>

<para>
  In case the option <guilabel>Use Enter to move between fields</guilabel> is
  selected, the <keycap>Enter</keycap> moves to the next field just as the
  <keycap>TAB</keycap> key except for the last entry field where it stores the
  data.
</para>

<para>
  Which method you use to enter transactions is up to you and is a matter of
  personal preference.
</para>
</sect2>
</sect1>

<sect1 id="details.ledgers.split">
<title id="details.ledgers.split.title">Split Transactions</title>

<para>
  The Split transaction feature allows you to divide up a transaction into
  multiple categories, representing, for example, the different items bought
  with a single purchase at a store.
</para> 

<para>
  To enter a split transaction, using either the transaction input form or the
  transaction list, start a new transaction as normal, including entering the
  total amount. Then, instead of selecting a category, click the
  <guibutton>Split</guibutton> button. If you have already selected a category,
  that becomes the first entry in the split editor screen.
</para> 
 
<para>
  In the split editor screen, double-click an empty line to enter a new
  sub-transaction or press <keycombo
  action="simul">&Ctrl;&Insert;</keycombo>. Specify the category, add an
  (optional) memo, and enter the amount. To save this part of the split, press
  the green check mark under the category. To cancel, press the red cross.
</para> 
 
<para>
  After entering a split, the bottom of the split editor shows how much of the
  total transaction is still unassigned. After entering all the splits, press
  the <guibutton>OK</guibutton> button to save the entire transaction. If there
  is still an unassigned amount, you will be prompted to either return to
  editing the splits, change the total transaction amount, or leave part of the
  transaction unassigned.
</para>

<para>
  Note that the category field in the transaction input form or the transaction
  list now displays <emphasis>Split transaction</emphasis>.
</para> 

<para>
	<screenshot>
	<screeninfo>Split transactions</screeninfo>
	<mediaobject>
	<imageobject>
	<imagedata fileref="split_transaction.png" format="PNG" />
	</imageobject>
	<textobject>
	<phrase>Split transaction</phrase>
	</textobject>
	</mediaobject>
	</screenshot>
</para>

</sect1>

<sect1 id="details.ledger.edit">
<title>Editing transactions</title>
<para>
  To edit a transaction, select it in the list view and either click on
  <guibutton>Edit</guibutton> in the transaction input form or right click on
  the entry and select <guimenuitem>Edit</guimenuitem> from the popup menu.  If
  you are editing transactions directly in the list you can edit the transaction
  simply by double clicking on an entry or by pressing <keycap>Enter</keycap>
  when a transaction is highlighted.
</para>
</sect1>

<sect1 id="details.ledger.delete">
<title>Deleting transactions</title>

<para>
  To delete a transaction, select it in the list view, right click on the entry,
  and select <guimenuitem>Delete</guimenuitem> from the popup menu when it
  appears, or click <guibutton>Delete</guibutton> on the transaction form.
</para>
</sect1>

<sect1 id="details.ledgers.match">
<title id="details.ledgers.match.title">Matching Transactions</title>

<para>
  Generally, when importing transactions, either via QIF, OFX, or HBCI, KMyMoney
  will automatically attempt to match them against existing transactions. To
  allow for differences in the dates, there is a default setting of 4 days,
  which may be changed in the settings - Register/Import. Any transactions so
  matched will be highlighted in green. On completion of the import, you should
  review these and either accept or unmatch them.
</para>

<para>
  If you should find that an imported transaction was not automatically matched
  with an existing transaction when it should have matched, then it is possible
  to match them manually. Note that there is a difference between manually
  matching two transactions and simply deleting one of them, even though they
  may appear to have the same effect.  Specifically with OFX or HBCI, it is
  important not to delete the imported transaction, because you will find that
  the next time you import your transactions, the deleted transaction shows up
  again.  This is because modern import formats like OFX and HBCI use a
  <quote>Transaction ID</quote> to identify transactions.  When you delete the
  imported transaction, the transaction ID goes with it, so the importer has no
  way to know this transaction was already imported.
</para> 

<para>
  The solution is to tell &kappname; that the transactions are the same, using
  the manual matching interface. This allows you to match an imported
  transaction with a hand-entered (non-imported) transaction. To do so, select
  one of the transactions to be matched by clicking on it, then select the other
  by left clicking on it while pressing the Ctrl key, and then select
  <guimenuitem>Match</guimenuitem> from the context menu. This changes the
  background color to a pale green. This will match and combine the two
  transactions together. The values of both transactions must be the same for
  the match to work, except that the dates may differ by the window specified in
  the settings, as described above. If you are happy with the result, right
  click the matched transaction, then select <guibutton>Accept</guibutton>.
</para>

<para>
  During import of online statements - either directly or by importing a
  downloaded file - &kappname; performs matching as best as it can based on the
  name of the payee and the amount of the transaction. In case of an invalid
  match, a matched transaction can be unmatched.
</para>

<note>
  <para>
    The matching interface will not allow you to match two transactions which
    have both been imported.  Likewise, it won't allow matching between two
    transactions which have both been entered by hand.
  </para>
</note>
</sect1>

<sect1 id="details.ledgers.cleared">
<title>Understanding the Cleared State</title>

<para>
  A transaction can have one of three states: non-reconciled, cleared (C), and
  reconciled (R). When you enter a transaction, it has state
  non-reconciled. Once the bank posts the transaction, the user can clear it
  and thus transform it to state (C). When you receive a statement from the
  bank, all cleared transactions should be on the statement.
</para>

<para>
	<screenshot>
	<screeninfo>Understanding the cleared state</screeninfo>
	<mediaobject>
	<imageobject>
	<imagedata fileref="cleared_state.png" format="PNG" />
	</imageobject>
	<textobject>
	<phrase>cleared state</phrase>
	</textobject>
	</mediaobject>
	</screenshot>
</para>

<para>
  When you <link linkend="details.reconcile">reconcile your account</link>, you
  actually mark the statements as cleared and check that the difference between
  the beginning balance and the cleared transactions equals the ending balance
  of the statement. When this is the case, you can 'finish reconciling' which
  actually changes the state of all cleared transactions (C) to reconciled (R).
</para>

<para>
  If you try to edit a transaction with at least one split marked as reconciled
  (R), you will be warned.
</para>

<para>
  A fourth state is defined (frozen (F)) but there's currently no way to set
  it. It is reserved for future use. Nevertheless, if a transaction has at least
  one split in state frozen it cannot be edited anymore.
</para>

</sect1>

<sect1 id="details.ledgers.settings"><title id="details.ledgers.settings.title">Changing Transaction Settings</title>

<para>
  There are several settings options that change the appearance and behaviour of
  the ledger view in terms of transactions. These settings are found by
  selecting <guimenu>Settings</guimenu> <guimenuitem>Configure
  &kappname;</guimenuitem> from the menu bar, and selecting the
  <guiicon><inlinemediaobject><imageobject><imagedata fileref="ledgers_view.png" />
  </imageobject></inlinemediaobject>Register</guiicon> icon from the list on the
  left.
</para> 

<para>
  Most of the settings are self explanatory. For clarity, several of the
  settings are explained below.
</para>

<itemizedlist>
  <listitem>
    <para>
      Show transaction form (under the Display tab) - toggle to hide the
      transaction input area at the bottom of this screen. Transactions can
      still be entered directly into an empty line at the end of the transaction
      list, through an automatic compact entry area.
    </para>
  </listitem>
</itemizedlist>

<para>
  These images show what direct transaction entry looks like compared to the
  transaction form.
</para>

<para>The transaction input form</para>

<para>
	<screenshot>
	<screeninfo>The transaction form</screeninfo>
	<mediaobject>
	<imageobject>
	<imagedata fileref="transactionform.png" format="PNG" />
	</imageobject>
	<textobject>
	<phrase>Transaction form</phrase>
	</textobject>
	</mediaobject>
	</screenshot>
</para>

<para>Transactions entered directly</para>

<para>
	<screenshot>
	<screeninfo>Transactions entered directly</screeninfo>
	<mediaobject>
	<imageobject>
	<imagedata fileref="transactionform-off.png" format="PNG" />
	</imageobject>
	<textobject>
	<phrase>Direct input</phrase>
	</textobject>
	</mediaobject>
	</screenshot>
</para>

<itemizedlist>
  <listitem>
    <para>
      Keep changes when selecting a different transaction/split - by selecting
      the next line in the transaction list or split editor, the changes are
      kept, instead of the default behaviour where you have to push the green
      check mark to save changes.
    </para>
  </listitem>
</itemizedlist>

</sect1>

<sect1 id="details.ledgers.other">
<title id="details.ledgers.other.title">Other Functionality</title>

<para>
  Additional options are available from the <guimenu>Transaction
  Options</guimenu> menu, accessed by right-clicking any transaction in the
  list.
</para>

<para>
	<screenshot>
	<screeninfo>The transaction options sub-menu</screeninfo>
	<mediaobject>
	<imageobject>
	<imagedata fileref="ledger_more.png" format="PNG" />
	</imageobject>
	<textobject>
	<phrase>Transaction options</phrase>
	</textobject>
	</mediaobject>
	</screenshot>
</para>

<para>
  Options include jumping to the Payee's page, creating a schedule, and changing
  the reconciled or cleared indication.
</para>

<para>
  To edit the account information from the ledger view, select
  <guimenu>Account</guimenu> from the menu bar. From this menu, you can change
  the account details, or bring up the Reconcile menu, which allows you to match
  transactions against an official bank statement or credit card notice.
</para>
</sect1>
</chapter>