Git commit 59c0ea8f9068f1739a9d77fc739514c993c9a936 by Jack Ostroff. Committed on 05/09/2023 at 00:12. Pushed by ostroffjh into branch 'Handbook-5.2'.
First pass on ledgers M +21 -0 README-CONTRIBUTORS M +499 -391 doc/details-ledgers.docbook https://invent.kde.org/office/kmymoney/-/commit/59c0ea8f9068f1739a9d77fc739514c993c9a936 diff --git a/README-CONTRIBUTORS b/README-CONTRIBUTORS index d89b1873f..7b176fe1a 100644 --- a/README-CONTRIBUTORS +++ b/README-CONTRIBUTORS @@ -197,6 +197,23 @@ multiple places. actually fetching prices (stocks or currency.) Should we just drop the field, or at least note it is ignored? IS there any way to retreive historic prices? +- Can the transaction form show up other than at the bottom of the transaction list? + With or without the form enabled, editing a transaction shows the form at the + location of the transaction in the ledger. Shouldn't editing take place in the + form at the bottom? + +- for clarifications, can a transaction only be split on one side? It does make + sense to restrict a transaction to only one account on one side, but would allowing + both sides be split cause any real problem, or just too much confusion? + +- In Investment account ledger, Activity has a blue border when selected, but + Security and Account have the name highlighted when the field is selected. Why the + difference. + +- Can you really not match two non-imported transactions? If so, then the date + always comes from the imported transaction. + + ---------------- This is a list of potential enhancements I came up with while reviewing the handbook, @@ -225,6 +242,10 @@ elsewhere. - should register be replaced with ledger wherever it is used? +- If the transaction form is displayed, a single selected transaction is shown in the + form. However, if you unselect the transaction, it remains displaye in the form. + If you select additional transaction, the last one selected is shown in the form. + There seems no danger, since the form is not editable, but it does seem odd. diff --git a/doc/details-ledgers.docbook b/doc/details-ledgers.docbook index 44de07f53..7eddd774e 100644 --- a/doc/details-ledgers.docbook +++ b/doc/details-ledgers.docbook @@ -7,17 +7,17 @@ <author>&Michael.Carpino; &Michael.Carpino.mail;</author> <author> &Jack.H.Ostroff; &Jack.H.Ostroff.mail; </author> </authorgroup> - <date>2023-08-30</date> + <date>2023-09-04</date> <releaseinfo>5.2.0</releaseinfo> </chapterinfo> <title>Ledgers</title> <sect1 id="details.ledgers.view"> -<title>The Ledger View</title> +<title>The Ledgers View</title> <para> - The Ledger View is functionally the data integration center of &kmymoney;. This + The Ledgers View is functionally the data integration center of &kmymoney;. This view is for entering, examining, editin, and deleting transactions in your defined accounts. This veiw has had a major overaul since the 5.1 series of &kmymoney; releases. The main difference is that it is now a tabbed display, so you can have @@ -89,99 +89,172 @@ <para> In previous versions of &kmymoney;, the filter area was always displayed at the top of the ledger. Now, it is normally hidden, but can be displayed by typing - <keycombo>&Ctrl;<keycap>F</keycap></keycombo>. It now appears below the - transaction list. + <keycombo>&Ctrl;<keycap>F</keycap></keycombo>. It will then appear below the + transaction list. At the left of the filter area is a small <quote>x</quote> in a + red circle.<!-- FIXME: use actual icon --> Clicking on this icon will clear any + filters in place and hide the filter area. </para> <para> Previous versions of &kmymoney; had a dropdown where you could select the account to be displayed in the ledger. This is no longer necessary, as to view another - account, you can just open a new tab. Note that depending upon the type of the - account the <link linkend="details.ledger.transactionform">transaction form</link>, - if it is displayed, may change. + account, you can just open a new tab. </para> <para> - If displayed, most of the filter area is a text box. This filter box provides the - ability to search for transactions containing the text typed in the box. These - filtered transactions will then displayed in the list above. The text specified - can be in any of the fields of the transaction for the specific account. At the - right of the filter text is a status filter. The default value of this dropdown is - <guilabel>Any status</guilabel> which does not apply any filter to the list. The other values allow - you to restrict the list of displayed transactions to <guilabel></guilabel> - <guilabel></guilabel> - <guilabel></guilabel> - <guilabel></guilabel> <guilabel></guilabel> - <guilabel></guilabel> <guilabel></guilabel> - status, Imported, Matched, Erroneous, Not marked, Not reconciled, Cleared, and - scheduled. + If displayed, most of the filter area is a text entry area. Typing in this filter + box will cause &kmymoney; to display only transactions containing the text typed in + the box. The text specified can be in any of the fields of the transaction for the + displayed account. At the right end of the filter box is a small + <quote>x</quote> in a black box.<!-- FIXME: use actual icon --> Clicking this icon + will clear any text in the filter box. </para> +<para> + At the right of the text entry is a status filter dropdown. The default value is + <guilabel>Any status</guilabel> which does not apply any filter to the list. The + other values allow you to restrict the list of displayed transactions to those + which are <guilabel>Imported</guilabel>, <guilabel>Matched</guilabel>, + <guilabel>Erroneous</guilabel>, <guilabel>Not marked</guilabel>, <guilabel>Not + reconciled</guilabel>, <guilabel>Cleared</guilabel>, or + <guilabel>Scheduled</guilabel>. +</para> </sect2> <sect2> <title>The transaction list</title> <para> - <screenshot> - <mediaobject> - <imageobject> + <screenshot> + <mediaobject> + <imageobject> <imagedata fileref="translist.png" format="PNG" /> - </imageobject> - <textobject> + </imageobject> + <textobject> <phrase>Transaction list</phrase> - </textobject> - </mediaobject> - </screenshot> + </textobject> + </mediaobject> + </screenshot> </para> <para> - After a transaction has been entered, 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 order of - transactions is sorted by date with the most recent transaction on the bottom. - Clicking the &RMB; on the header of the transaction list brings - up a dialog box that will allow the ability to change the sort order of the - transactions. For instructions on how to change the default sort order, see the <link - linkend="details.settings.register.sorting">Sorting tab</link> section of the - <link linkend="details.settings">&kmymoney; Settings</link> Chapter. + The transaction list displays all the (possible filtered) transaction in the + account. The following columns are always displayed: +</para> + +<formalpara><title>Date</title> +<para> + the post date, or the the actual date the transaction occurred </para> +</formalpara> +<formalpara><title>Detail</title> <para> - Note that the balance column is based on the currently displayed sort order, - and will not be calculated if the display is filtered by the searching within - the filter box or transaction type dropdown, as described above. + this shows the category/categories, other account (for transfers,) and memo for the + transaction +</para> +</formalpara> + +<formalpara><title>Payment and Deposit</title> +<para> + the amount of money either leaving or entering the account in this transaction. A + value will appear in one or the other column, as appropriate. +</para> +</formalpara> + +<formalpara><title>Balance</title> +<para> + Note that this depends on the currently displayed sort order, and will not be + calculated if the display is filtered by the searching within the filter box or + transaction status dropdown, as described above. +</para> +</formalpara> + +<para> + The following columns are optional, and their presence can be toggled by right + clicking on any column header and selecting or deselecting the appropriate + checkbox. Currently, the columns cannot be reordered. +</para> + +<formalpara><title>No.</title> +<para> + the transaction number, which is always optional +</para> +</formalpara> + +<formalpara><title>Entry</title> +<para> + the Entry Date, which is the date the transaction was entered into the ledger. +</para> +</formalpara> + +<formalpara><title>Payee</title> +<para> + the person or organization you are giving money to or receiving money from. +</para> +</formalpara> + +<formalpara><title>C</title> +<para> + the Reconciliation Status. The value can be blank, a <quote>C</quote> for Cleared, + or <quote>R</quote> for Reconciled. The meaning of these terms is discussed in a + following section on Reconciliation. <!-- FIXME: make a real link --> +</para> +</formalpara> + +<para> + After a transaction has been entered, 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 order of transactions is sorted by + transaction date, with the most recent transaction on the bottom. Clicking on the + header of the transaction list brings up a dialog box that will allow the ability + to change the sort order of the transactions. For instructions on how to change + the default sort order, see the <link + linkend="details.settings.register.sorting">Sorting tab</link> section of the <link + linkend="details.settings">&kmymoney; Settings</link> Chapter. +</para> + +<para> + Note that altering the sort order can be useful in special circumstances, but for + many sort orders, especiallyl where the transaction date is not the first sort key, + the balance column will not be very meaningful, and will almost certainly not match + the balance of any statement or display by the bank or institution. +</para> + +<para> + In previous versions of &kmymoney; you needed to right-click on a column header to + change the sort order. Now, right-clicking allows you to toggle display of the + optional columns, and you need to left-click to change the sort order. </para> <para> At the bottom of the transaction list, &kmymoney; displays three values: </para> -<formalpara><title>Last reconciled</title> - <para> - This is the most recent date when you reconciled this account. - Reconciliation is an important process for many accounts, and is described - <link linkend="details.reconcile">here</link>. - </para> +<formalpara><title>Last reconciliation</title> +<para> + This is the most recent date when you reconciled this account. Reconciliation is + an important process for many accounts, and is described <link + linkend="details.reconcile">here</link>. +</para> </formalpara> <formalpara><title>Cleared</title> - <para> - This is the total of all cleared and reconciled transactions in this - account. See <link linkend="details.ledgers.cleared">this section</link> - for more information about the cleared and reconciled states of - transactions. - </para> +<para> + This is the total of all cleared and reconciled transactions in this account. + See <link linkend="details.ledgers.cleared">this section</link> for more + information about the cleared and reconciled states of transactions. +</para> </formalpara> <formalpara><title>Balance</title> - <para> - This is where &kmymoney; displays the total balance of the account, which is - the sum of all transactions in the account. However, if you select more - than one transaction in the transaction list, this changes to display the - sum of the selected transactions. This returns to the balance when only one - transaction is selected. - </para> +<para> + This is where &kmymoney; displays the current balance of the account, which is the + sum of all transactions in the account. However, if you select more than one + transaction in the transaction list, this changes to display the sum of the + selected transactions. This returns to the balance when no transactions or only + one transaction is selected. +</para> </formalpara> </sect2> @@ -189,11 +262,11 @@ <title>The transaction 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. + Whether or not the transaction form is displayed at the bottom area of the Ledger + View depends on your configuration and the type of account being displayed. + However, if present, 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> @@ -203,18 +276,19 @@ <para> There are two methods of entering transactions into the ledger: using the - transaction form or entering the data directly into the transaction - list. The transaction form is displayed by default and this is the - method we will discuss first. Turning off the transaction form can be - accomplished by going to the Ledger section in the Configure &kmymoney; that's - within the Settings. + transaction form or entering the data directly into the transaction list. The + transaction form is displayed by default and this is the method we will discuss + first. Turning off the transaction form can be accomplished by going to the Ledger + section in the Configure &kmymoney; that's within the Settings. + <!-- FIXME: use a proper link --> </para> <para> - The fields in the input area match the information fields in the transaction - 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. + The fields in the input area match the information fields in the transaction 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. + <!-- FIXME: use specific link to discussion of split transaction --> </para> </sect1> @@ -222,169 +296,161 @@ <title>Using the transaction form</title> <para> - <screenshot> - <mediaobject> - <imageobject> + <screenshot> + <mediaobject> + <imageobject> <imagedata fileref="transactionform.png" format="PNG" /> - </imageobject> - <textobject> + </imageobject> + <textobject> <phrase>Transaction Form</phrase> - </textobject> - </mediaobject> - </screenshot> + </textobject> + </mediaobject> + </screenshot> </para> <para> - The transaction form at the bottom of the ledger view is the interface - for manually creating transactions. -</para> - -<para> - Depending upon the type of transaction you wish to enter there are - several tabs available on the transaction form. Click on the tab that best - defines your transaction (deposit, transfer, or withdrawal) and the form - will load several fields available for your input. + The transaction form at the bottom of the ledger view is the interface for manually + creating transactions. </para> <para> - Please note that the actual transaction method is not used directly by - &kmymoney; but is purely for grouping/reporting purposes. -</para> - -<para> - If you are unsure which method to choose simply use Deposit for any money - coming into the account, Withdrawal for money going 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 the appropriate tab. + Note that the layout of the transaction form has been revised in &kmymoney; 5.2. + Whether a new transaction is a deposit, withdrawal, or transfer is determined by + the data you enter in the amount and category fields, you do not need to choose a + specific tab or specify To: or From:. </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, &kmymoney; will offer alternatives matching the characters you begin - to enter. To select the matching content simply click on the entry by using - your mouse or selecting the appropriate keyboard keys. If the entry is not - listed finish typing the content to add the new value. The next time you type - the content, &kmymoney; will find it for you as you begin to enter the initial + Enter the information using the following notes on the available fields. Note that + many fields have <quote>Auto Completion</quote> turned on. That is, if you start + typing, &kmymoney; will offer alternatives matching the characters you begin to + enter. To select the matching content simply click on the entry by using your + mouse or selecting the appropriate keyboard keys. If the entry is not listed + finish typing the content to add the new value. The next time you type the + content, &kmymoney; will find it for you as you begin to enter the initial characters. </para> <sect3> -<title>The Payee</title> +<title>Payer/Payee</title> <para> - The Payee is who the money came from/to. If the payee is a new entry + This is who the money comes from or goes to. If the payee is a new entry &kmymoney; 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, phone number and account - number as well as notes can be updated in the Payees view. + number as well as notes can be updated in the Payees View. </para> </sect3> <sect3> -<title>The Category</title> +<title>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 defined field. If you - have entered the category and it does not exist then &kmymoney; will ask if - you want to create a new one. If the selection is Yes &kmymoney; will then - open a dialog box that allows for the further definition of the category based - on General, Hierarchy and Tax characteristics. + This specifies 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 defined field. If you have entered the category and it does not exist then + &kmymoney; will ask if you want to create a new one. If you select + <guilabel>Yes</guilabel> &kmymoney; will then open a dialog box that allows for the + further definition of the category based on General, Hierarchy, and Tax + characteristics. +</para> + +<para> + For Transfer transactions, you select the other account in the Category field. </para> <para> If you wish to associate parts of the transaction with different categories, - &kmymoney; can handle this need. An example transaction might be a cash - withdrawal of 50 of which you use 10 on food, 20 on beer and 20 as - 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. + &kmymoney; can handle this need. An example might be a cash withdrawal of 50 of + which you use 10 on food, 20 on beer, and 20 as 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">&kmymoney; fields</link> section for more information on how to use this field. + <!-- FIXME: probably need better link to explanation of split transactions --> </para> </sect3> <sect3> -<title>The Tag</title> +<title>Tags</title> <para> - Tags are similar to Categories, and can be used to maintain an orthogonal view - to Categories. They provide the ability to group transactions within a Category based - on your defined needs. This need could be defined by a specifics to Person, Place, or - Thing. For example, you might have a Category for each different type of automotive - expenses, and then have a Tag for each vehicle. As with Categories, you can select - from the dropdown list, or type a new Tag name, and be prompted if you want to create - a new Tag with that name. Within the Tag field &kmymoney; will allow for multiple tags - entered within a single transaction. Also, you can enter a tag on an individual split. + Tags are similar to Categories, and can be used to maintain an orthogonal view to + Categories. They provide the ability to group transactions within a Category based + on your defined needs. This need could be defined by a specifics to Person, Place, + or Thing. For example, you might have a Category for each different type of + automotive expenses, and then have a Tag for each vehicle. As with Categories, you + can select from the dropdown list, or type a new Tag name, and be prompted if you + want to create a new Tag with that name. Within the Tag field &kmymoney; will + allow for multiple tags entered within a single transaction. Also, you can enter + tags on an individual split. </para> </sect3> <sect3> -<title>The Memo</title> +<title>Memo</title> <para> - A multi-line memo can be entered if you wish to help you remember further - details of a specific transaction. + A single or multi-line memo can be entered if you wish to record any further + details of the transaction. </para> </sect3> <sect3> -<title>The Check Number</title> +<title>Number</title> <para> - The check number can be entered if needed. Note that the check number field can - be made visible or invisible in the ledger if desired. This is configured in - the Ledger Settings dialog. + The transaction number can be entered if needed. Note that the check number field + can be made visible or invisible in the ledger list if desired. This is configured + in the Ledger Settings dialog. While this is most commonly used for a Check Number + in a Checking account, it can be used in any type of account, in any way you might + want to number your transactions. </para> </sect3> <sect3> -<title>The Date</title> +<title>Date</title> <para> - The transaction's date must be entered to specify when the transaction took - place. See the special <link linkend="reference.widgets">&kmymoney; - fields</link> section for more information on how the date input field can be - used to make entering dates quicker and easier. For transactions in checking - and credit card accounts, it is your choice whether to use the actual date - (when you wrote the check or made the purchase) or the posting date as - reported by the bank or credit card company. Using the actual date can help - you track when you made the purchase, for example, but the statement or - downloaded data from the bank is more likely to use the posting date. + The transaction's date must be entered to specify when the transaction took place. + See the special <link linkend="reference.widgets">&kmymoney; fields</link> section + for more information on how the date input field can be used to make entering dates + quicker and easier. For transactions in checking and credit card accounts, it is + your choice whether to use the actual date (when you wrote the check or made the + purchase) or the posting date as reported by the bank or credit card company. + Using the actual date can help you track when you made the purchase, for example, + but the statement or downloaded data from the bank is more likely to use the + posting date. &kmymoney; automatically keeps the date the transaction was entered + into the ledger, but this is in a different field, which is optionally displayed in + the ledger list. </para> </sect3> <sect3> -<title>The Amount</title> +<title>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 any of these mathematical symbols: + - * / in a formula, as in - <emphasis>12 + 3</emphasis>. When entering the plus sign, the calculator will - be opened. Note that only the final result of any calculation will be saved - as the amount of the transaction. + Finally, enter the transaction amount into either the <guilabel>Paymenet</guilabel> + or <guilabel>Deposit</guilabel> field. Note that a simple calculator can be + displayed, either by clicking the icon to the right of the field, or by entering + the % character into the field, or by entering any of these mathematical symbols: + + - * / in a formula, as in <emphasis>12 + 3</emphasis>. When entering the plus + sign, the calculator will be opened. Note that only the final result of any + calculation will be saved as the Payment or Deposit amount of the transaction. </para> <para> - When you are satisfied that all the fields have been adequately filled in, - 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. + When you are satisfied that all the fields have been adequately filled in, 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> @@ -394,36 +460,34 @@ <title>Directly inputting transactions into the list</title> <para> - <screenshot> - <mediaobject> - <imageobject> + <screenshot> + <mediaobject> + <imageobject> <imagedata fileref="transactionform-off.png" format="PNG" /> - </imageobject> - <textobject> + </imageobject> + <textobject> <phrase>Direct Transaction Entry</phrase> - </textobject> - </mediaobject> - </screenshot> + </textobject> + </mediaobject> + </screenshot> </para> <para> - The second method of entering transactions into the ledger involves editing - the transaction list directly. + The second method of entering transactions into the ledger involves creating and + editing the transaction directly in the transactions list. </para> <para> + <!-- FIXME: confirm this is right. It looks to me like new entry is always in the + form, although the form is shown at the "correct" position in the ledger, not at + the bottom. --> To do this you must first let &kmymoney; 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 the <menuchoice><guimenu>Settings</guimenu> + transaction form. This is done by selecting the <menuchoice><guimenu>Settings</guimenu> <guimenuitem>Configure &kmymoney;...</guimenuitem></menuchoice> menu item and selecting the <guiicon><inlinemediaobject><imageobject><imagedata fileref="ledgers_view.png" format="PNG"/></imageobject></inlinemediaobject> - </guiicon> register icon from the list on the left. The option to uncheck is - labeled <guilabel>Show transaction form</guilabel>. When finished click on + </guiicon> register 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 or edit transactions. </para> @@ -431,31 +495,34 @@ <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;&Ins;</keycombo>, or click - <guibutton>New</guibutton> at the foot of the window. The &Up; - and &Down; arrow keys let you navigate through the list. After - pressing &Enter; or double-clicking on an entry, the transaction list displays - the fields required to enter the transaction and waits for input. + To enter a new transaction into the ledger, you can either click on the empty entry + at the bottom of the ledger list, press <keycombo + action="simul">&Ctrl;&Ins;</keycombo>, or select the + <menuchoice><guimenu>Transaction</guimenu> + <guimenuitem>New transaction...</guimenuitem></menuchoice> menu item. To edit an + existing transaction, the &Up; and &Down; arrow keys let you navigate through the + list. After pressing &Enter; or double-clicking on an entry, the transaction list + displays the fields required to enter or edit the transaction. + <!-- FIXME: should we just say this is the floating transaction for or the + transaction form appears at the location of the transaction in the list + instead of at the bottom of the list? --> </para> <para> - To move through the fields press the 	 key and when done - press &Enter; to save the changes or &Esc; to - cancel. + To move through the fields press the 	 key and when done press &Enter; to save + the changes or &Esc; to cancel. </para> <para> In case the option <guilabel>Use Enter to move between fields</guilabel> is - selected, the &Enter; key moves to the next field just as the - 	 key except for the last entry field where it saves the - data. + selected, the &Enter; key moves to the next field just as the 	 key except for + the last entry field where it saves the data. </para> <para> - Which method you use to enter transactions is up to you and is a matter of - personal preference. + Which method you use to enter transactions is up to you and is a matter of personal + preference. As with many applications, there are almost always multiple ways to + accomplish any particular task. </para> </sect2> </sect1> @@ -464,196 +531,242 @@ <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> + The split transaction feature allows you to divide up a transaction into multiple + categories, representing, for example, the different types of items bought with a + single purchase at a store. +</para> + +<!-- FIXME: Need to note you cas assign a payee in the split editor, and it (?) shows + up in the memo columne, which needs to be fixed. + Also need to mention th new buttons: Merge, Delete (different from Delete 0 --> + +<para> + A transaction always contains one or more splits. Each split represents money + moving into or out of a sigle account. + <!-- FIXME: Is there somewhere else this can refer to which explains in any more + detail what can and can't be split, and the possibility of a transaction with + only one split for adding or removing shares. We also need a place to + explaint currency conversion, and how it relates to currencies. --> + Most of the time, a transaction contains exactly two splits, one for the account + the money is coming from and the other for the account the money is going to. The + term <quote>Split Transaction</quote> is used when one side of the transaction is + further divided into more than one split. This is most commonly done when money + moves in or out of a typical bank account, but is allocated to more than one + category. +</para> <para> - To enter a split transaction, using either the transaction form or the - transaction list, start a new transaction, including entering the total - amount. Then, instead of selecting a category, click the - <guibutton>Split</guibutton> button to the right of the - <guilabel>Category</guilabel> field. If you have already selected a category, - that becomes the first entry in the split editor screen. + To enter a split transaction, using either the transaction form or the transaction + list, start a new transaction, including entering the total amount. Then, instead + of selecting a category, click the <guibutton>Split</guibutton><!-- FIXME: use + actual icon --> button to the right of the <guilabel>Category</guilabel> field. 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;&Ins;</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. + In the split editor screen, double-click an empty line to enter a new split or + sub-transaction or press <keycombo action="simul">&Ctrl;&Ins;</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.<!-- FIXME: the check and cross are in the second below shot, not the one + immediately below. Can we make this description closer to it's picture? --> </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. + 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. <!-- FIXME: Have the check and cross been replaced with OK and Cancel + buttons? --> </para> <para> - <screenshot> - <screeninfo>Split with unassigned amount</screeninfo> - <mediaobject> - <imageobject> - <imagedata fileref="split_unasigned.png" format="PNG" /> - </imageobject> - <textobject> + <screenshot> + <screeninfo>Split with unassigned amount</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="split_unassigned.png" format="PNG" /> + </imageobject> + <textobject> <phrase>Split with unassigned amount</phrase> - </textobject> - </mediaobject> - </screenshot> + </textobject> + </mediaobject> + </screenshot> </para> <para> - To redistribute an 'Unassigned' or 'Overassigned' amount, select a split item that has to be adjusted. - After that click on a button <guibutton>Apply Difference</guibutton>. - If 'Unassigned' was previously shown and non-zero, that amount will be added to the selected line item value. - If 'Overassigned' was previously shown and non-zero, that amount will be subtracted from the selected line item value. - As the result, the 'Unassigned' amount will be set to zero and a transaction could be saved - successfully. + To redistribute an <quote>Unassigned</quote> or <quote>Overassigned</quote> amount, + select a split item that has to be adjusted. After that click the <guibutton>Apply + Difference</guibutton> button. If <quote>Unassigned</quote> was previously shown + and non-zero, that amount will be added to the selected line item value. If + <quote>Overassigned</quote> was previously shown and non-zero, that amount will be + subtracted from the selected line item value. As the result, the + <quote>Unassigned</quote> or <quote>Overassigned</quote> amount will be set to zero + and the transaction can be saved successfully. </para> <para> - Note that the category field in the transaction form or the transaction - list now displays <emphasis>Split transaction</emphasis>. + Note that the category field in the transaction form or the transaction list now + displays a comma separated list of the categories in each of the split entries. </para> <para> - <screenshot> - <screeninfo>Split transactions</screeninfo> - <mediaobject> - <imageobject> + <screenshot> + <screeninfo>Split transactions</screeninfo> + <mediaobject> + <imageobject> <imagedata fileref="split_transaction.png" format="PNG" /> - </imageobject> - <textobject> + </imageobject> + <textobject> <phrase>Split transaction</phrase> - </textobject> - </mediaobject> - </screenshot> + </textobject> + </mediaobject> + </screenshot> </para> - </sect1> -<sect1 id="details.ledger.edit"> +<sect1 id="details.ledger.actions"> +<title>Other transaction actions</title> + +<sect2 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 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 &Enter; when a - transaction is highlighted. + <guibutton>Edit</guibutton> in the transaction 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 &Enter; when a transaction is + highlighted. </para> -</sect1> +</sect2> -<sect1 id="details.ledger.delete"> +<sect2 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. + To delete a transaction, right-click it in the list view and select + <guimenuitem>Delete</guimenuitem> from the popup menu when it appears, or click + <guibutton>Delete</guibutton> on the transaction form. </para> -</sect1> +</sect2> -<sect1 id="details.ledgers.match"> +<sect2 id="details.ledgers.match"> <title id="details.ledgers.match.title">Matching Transactions</title> <para> Generally, when you import 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 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 may show 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. + 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. <!-- FIXME: make proper link --> Any + transactions so matched will be highlighted in green. <!-- FIXME: confirm the color + highlight --> On completion of the import, you should review these and either + accept or unmatch them. +</para> + +<para> + If you 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 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 may show 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> + If this happens, the solution is to tell &kmymoney; 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 <keycap>&Ctrl;</keycap> key, and then select + <guimenuitem>Match</guimenuitem> from the context menu. This will match and + combine the two transactions. 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. +</para> + +<para> + <!-- FIXME: get screenshot and confirm this description --> + Since the value is the only field in the two transaction which must absolutely be + the same, the value of other fields may differ. When you select + <guilabel>Match</guilabel>, you will see a <guilabel>Match Transactions</guilabel> + dialog. This dialog allows you to choose which of the two transactions is used as + the source of the other fields in the matched transaction. Note that if one of the + transactions is imported, the date of that transactoin will always be used in the + matched transaction, even if all other fields are taken from the non-imported + transaction. </para> <para> - The solution is to tell &kmymoney; 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 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>. + If you are happy with the status of the match dialog, right-click the matched + transaction, then select <guibutton>Accept</guibutton>.<!-- where do you really right-click, + as you see the match dialog --> </para> <para> - During import of online statements, either directly or by importing a - downloaded file, &kmymoney; 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. + During import of online statements, either directly or by importing a downloaded + file, &kmymoney; 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 + The matching interface will not allow you to match two transactions which have + both been imported. Likewise, it also will not allow matching between two transactions which have both been entered by hand. </para> </note> +</sect2> </sect1> <sect1 id="details.ledgers.cleared"> <title>Understanding the State of a transaction</title> <para> - A transaction can have one of three states: non-reconciled (blank), cleared - (C), or reconciled (R). When a transaction is entered, it has state of - 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. + The process of reconciling accounts is discussed <link + linkend="details.reconcile">later in the handbook</link>. For now, it is only + important to know that transaction can have one of three states: non-reconciled + (blank), cleared (C), or reconciled (R). When a transaction is entered, it has + state of non-reconciled. Once the bank posts the transaction, the user can mark it + as cleared and thus transform it to state (C). </para> <para> - <screenshot> - <screeninfo>Understanding the cleared state</screeninfo> - <mediaobject> - <imageobject> + <screenshot> + <screeninfo>Understanding the cleared state</screeninfo> + <mediaobject> + <imageobject> <imagedata fileref="cleared_state.png" format="PNG" /> - </imageobject> - <textobject> + </imageobject> + <textobject> <phrase>cleared state</phrase> - </textobject> - </mediaobject> - </screenshot> + </textobject> + </mediaobject> + </screenshot> </para> <para> - When you <link linkend="details.reconcile">reconcile</link> your account, 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). + When you receive a statement from the bank, all cleared transactions should be on + the statement. When you reconcile your account, you confirm that the transactions + marked Cleared and the transactions listed on the statement are the same, and 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 changes the state of all cleared (C) transactions prior to the + date of reconciliation 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. + If you try to edit a transaction with at least one split marked as reconciled (R), + you will be warned. There is a further discussion about why this is important in + the section on Reconciliation. about </para> </sect1> @@ -661,116 +774,111 @@ <title>Changing Transaction Settings</title> <para> - There are several options that change the appearance and behavior of the - Ledger view in terms of transactions. These settings are found by selecting - <guimenu>Settings</guimenu><guimenuitem>Configure &kmymoney;</guimenuitem> - from the menu bar, and selecting the <guiicon><inlinemediaobject><imageobject> - <imagedata fileref="ledgers_view.png" format="PNG"/></imageobject> + There are several options that change the appearance and behavior of the Ledger + view in terms of transactions. These settings are found by selecting + <guimenu>Settings</guimenu><guimenuitem>Configure &kmymoney;</guimenuitem> from the + menu bar, and selecting the <guiicon><inlinemediaobject><imageobject> <imagedata + fileref="ledgers_view.png" format="PNG"/></imageobject> </inlinemediaobject></guiicon> ledger 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. + Most of the settings are self explanatory. The section linked above has a more + detailed explanation of each of the settings. Some of these settings have already + been mentions, but for clarity, several of them are explained briefly below. + </para> <!-- FIXME - if these are explained in the chapter on settings, just refer to that as is done above, and don't duplicate here. Leaving for now, but should clean - up later. --> + up later. *** started simplifyiing here, but not done 20230904 JHO --> -<itemizedlist> - <listitem> - <para> - Show transaction form (under the Display tab) - toggle to hide the - transaction form 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> +<formalpara><title>Show transaction form</title> +<para> + This setting is under the Display tab in the settings dialog: toggle to hide the + transaction form at the bottom of the Ledger View. Transactions can still be + entered directly into an empty line at the end of the transaction list, through an + automatic compact entry area. +</para> +</formalpara> <para> These images show what direct transaction entry looks like compared to the transaction form. </para> -<para>The transaction form</para> +<para>The transaction form: -<para> - <screenshot> - <screeninfo>The transaction form</screeninfo> - <mediaobject> - <imageobject> - <imagedata fileref="transactionform.png" format="PNG" /> - </imageobject> - <textobject> - <phrase>Transaction form</phrase> - </textobject> - </mediaobject> - </screenshot> +<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>Transactions entered directly -<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> +<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 behavior where you have to push the green - check mark to save changes. - </para> - </listitem> -</itemizedlist> +<formalpara><title>Keep changes when selecting a different transaction/split</title> +<para> + By selecting the next line in the transaction list or split editor, the changes are + kept, instead of the default behavior where you have to push the green check mark + to save changes. +</para> +</formalpara> </sect1> <sect1 id="details.ledgers.other"> -<title id="details.ledgers.other.title">Other Functionality</title> +<title id="details.ledgers.other.title">Other Transaction Functionality</title> <para> - Additional options are available from the <guimenu>Transaction - Options</guimenu> menu, accessed by right-clicking any transaction in the - list. + 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> + <screenshot> + <screeninfo>The transaction options sub-menu</screeninfo> + <mediaobject> + <imageobject> <imagedata fileref="ledger_more.png" format="PNG" /> - </imageobject> - <textobject> + </imageobject> + <textobject> <phrase>Transaction options</phrase> - </textobject> - </mediaobject> - </screenshot> + </textobject> + </mediaobject> + </screenshot> </para> <para> Options include jumping to the Payees view for the Payee in the transaction, - creating a schedule, and changing the reconciled or cleared status. + jumping to the ledger view for another account in the transaction, creating a + schedule based on this transaction, and changing the reconciled or cleared status. </para> <para> - To edit the account information from the ledger view, select - <guimenu>Account</guimenu> from the menu bar. From the <guimenuitem>Edit - Account...</guimenuitem> menu item, you can change the account details. There - is also a menu item to bring up the Reconcile menu, which allows you to match + To edit the account information from the Ledger View, select + <guimenu>Account</guimenu> from the menu bar. From the <guimenuitem>Edit + Account...</guimenuitem> menu item, you can change the account details. There is + also a menu item to bring up the Reconcile menu, which allows you to match transactions against an official bank statement or credit card notice. </para> </sect1>
