<!--
      (Do not remove this comment block.)
  Version: 2.0.0
  Last modified: July 9th 2006
  Maintainers: 
               Chris Lyttle <chris@wilddev.net>
  Author:
  		Jon Lapham <lapham@extracta.com.br>
  	Updated	Bengt Thuree <bengt@thuree.com>
  Originally written by Carol Champagne.
  Translators:
               (translators put your name and email here)
-->
<chapter id="chapter_txns">
  <title>Transactions</title>

  <para>This chapter will give you the basic information you need to
  understand and use transactions in <application>&app;</application>. Whereas accounts are the
  framework and structure of a chart of accounts, transactions are the data
  which fills each account.</para>

  <sect1 id="txns-concepts1">
    <title>Basic Concepts</title>

    <para>A <emphasis>transaction</emphasis> in a double entry accounting
    system such as <application>&app;</application> is an exchange between at least 2 accounts. Thus, a
    single transaction must always consist of at least two parts, a <emphasis>from</emphasis> and
    a <emphasis>to</emphasis> account. The <emphasis>from</emphasis> account is passing value to the <emphasis>to</emphasis> account.
    Accountants call these parts of a transaction <emphasis>Ledger
    Entries</emphasis>. In <application>&app;</application>, they are called
    <emphasis>Splits</emphasis>.</para>

    <para>For example, you receive a paycheck and deposit it into your savings
    account at the bank. The <emphasis>transaction</emphasis> that occurs is
    that your bank savings account (an asset) received money from your income
    account. Two accounts are affected, and in this case there is a net
    increase in your equity.</para>

    <para>Working with transactions in <application>&app;</application> is performed using what is
    known as the <emphasis>account register</emphasis>. Every account you
    create has an account register. It will appear familiar to you as it looks
    very similar to the log used to track checkbooks.</para>
  </sect1>

  <sect1 id="txns-registers1">
    <title>The Account Register</title>

    <para>The <emphasis>account register</emphasis> is the <application>&app;</application> window
    which allows you to view or edit preexisting transactions, or add new
    transactions for a particular account. To enter the account register,
    simply highlight the account name in the account tree window and
    double-click to open it. You can also click the
    <guibutton>Open</guibutton> button in the <emphasis>Toolbar</emphasis> or use the right mouse
    button menu to open the account. <application>&app;</application> will display the account register
    window.</para>

    <sect2 id="txns-registers-twoaccount2">
      <title>Simple Transaction</title>

      <para>For example, starting with the chart of accounts we created in the
      previous chapter <filename>gcashdata_3</filename>, double click on the
      <guilabel>checking</guilabel> asset account. Let&rsquo;s add a simple
      transaction to the checking account. When you first create your accounts
      in <application>&app;</application>, it is common to start them off with an initial
      balance.</para>

      <para>In the first transaction row, enter a date (eg: March, 1, 2006), a
      description (eg: <quote>Opening Balance</quote>), click on the <guilabel>Transfer</guilabel> pop-up menu
      and select <emphasis>Equity:Opening Balances</emphasis>, add a deposit
      value of $1000, and press the <keycap function="enter">Enter</keycap> key. The account register should now
      appear similar to this figure:</para>

      <screenshot id="txns-register-2account">
        <mediaobject>
          <imageobject>
            <imagedata fileref="figures/txns_register_2account.png"
                       format="PNG" srccredit="Bengt  Thuree" />
          </imageobject>

          <textobject>
            <phrase>The Checking Account - Register</phrase>
          </textobject>

          <caption><para>This image shows <emphasis>Assets:Checking</emphasis> -
          Register after inserting a starting value
          transaction.</para></caption>
        </mediaobject>
      </screenshot>

      <para>Setting the starting balances of an account is an example of a
      simple two account transaction. In this case, affecting the
      <emphasis>Assets:Checking</emphasis> and the <emphasis>Equity:Opening Balances</emphasis>
      accounts.</para>

      <para>As another example of a simple 2 account transaction, add another
      transaction to describe the purchase of $45.21 worth of groceries. From
      within the <emphasis>Assets:Checking</emphasis> account, you would set
      <guilabel>Transfer</guilabel> to
      <emphasis>Expenses:Groceries</emphasis>. The account register should now
      appear:</para>

      <screenshot id="txns-register-2account2">
        <mediaobject>
          <imageobject>
            <imagedata fileref="figures/txns_register_2account2.png"
                       format="PNG" srccredit="Bengt Thuree" />
          </imageobject>

          <textobject>
            <phrase>The Checking Account - Register</phrase>
          </textobject>

          <caption><para>This image shows <emphasis>Assets:Checking</emphasis> -
          Register after adding a transaction for
          groceries.</para></caption>
        </mediaobject>
      </screenshot>
    </sect2>

    <sect2 id="txns-registers-multiaccount2">
      <title>Split Transaction</title>

      <para>The need for 3 or more splits in a transaction occurs when you need
      to split either the <quote>from</quote> or the <quote>to</quote> account in a transaction into
      multiple accounts. The classic example of this is when you receive a
      paycheck. Your take home pay from a paycheck will typically be less than
      your net pay, with the difference being due to taxes, retirement account
      payments, and/or other items. Thus, the single transaction of you
      receiving a paycheck involves other accounts besides simply
      <emphasis>Assets:Checking</emphasis> and
      <emphasis>Income:Salary</emphasis>.</para>

      <para>To add the paycheck split transaction from the
      <emphasis>Assets:Checking</emphasis> account register window, click
      on a new transaction line and click <guibutton>Split</guibutton>. Enter
      the description of this transaction on the first line (e.g.
      <quote>Employers R Us</quote>). In the split line below this, enter
      the various splits that make up this transaction, one by one. To
      enter the splits, first choose the account, then enter the amount by
      which to change the account. Then click the next split line and
      repeat the process.</para>

      <para>In this example, choose the deposit account
      (<emphasis>Assets:Checking</emphasis>) and then enter the amount that
      is being deposited into it (e.g. $670). Follow this by entering the
      amounts for the various taxes:
      <emphasis>Expenses:Taxes:Federal</emphasis> account, $180;
      <emphasis>Expenses:Taxes:Medicare</emphasis> account, $90; and
      <emphasis>Expenses:Taxes:Social Security</emphasis> account, $60. Finally,
      enter the gross total of your paycheck ($1,000 in this example) as a
      withdrawal transfer from <emphasis>Income:Salary</emphasis>.</para>

      <para>The final split should look like <xref
      linkend="txns-register-multiaccount"/>. Remember to press <keycap function="enter">Enter</keycap> after finishing the entry. But you
      should also know that when you press <keycap function="enter">Enter</keycap>, the split view will be
      <quote>folded</quote> back into a simplified transaction view. The
      splits are still there; you just have to click
      <guilabel>Split</guilabel> to view them. See <xref
      linkend="txns-registers-features2"/> for details.</para>

      <figure id="txns-register-multiaccount">
        <title>Entering a split transaction</title>
        <mediaobject>
          <imageobject>
            <imagedata fileref="figures/txns_register_multiaccount.png"
                       format="PNG" srccredit="Bengt Thuree" />
          </imageobject>
          <textobject>
            <phrase>Account Register - Split Transaction</phrase>
          </textobject>
        </mediaobject>
      </figure>
    </sect2>

    <sect2 id="txns-registers-features2">
      <title>Features of the Account Register</title>

      <para>The <emphasis>Titlebar</emphasis> of the account register displays the account name,
      which in this case is <emphasis>Assets:Checking</emphasis>. Below the
      <emphasis>Titlebar</emphasis>, the <emphasis>Menubar</emphasis> displays the menu items available within the
      account register, and the <emphasis>Toolbar</emphasis> contains handy buttons that help you
      work with the account register.</para>

      <para>Although each transaction has at least two splits, all you see in
      the basic register is a summary of the splits affecting the current
      account. In the <guilabel>Transfer</guilabel> column, you can see the other account from
      which money is <emphasis>transferred</emphasis> into or out of this
      account. If the transaction affects more than two accounts, <application>&app;</application>
      displays <guilabel>-- Split Transaction --</guilabel> to show it is a
      multiple-split transaction. You can see the individual splits of each
      transaction by clicking the <guibutton>Split</guibutton> button in the
      <emphasis>Toolbar</emphasis> while selecting the appropriate transaction.</para>

      <para>For split transactions, the first line of the transaction is the
      <emphasis>transaction line</emphasis>. It contains a
      <guilabel>Date</guilabel>, optional <guilabel>Num</guilabel> (such as a
      check number), transaction <guilabel>Description</guilabel>, total
      amount affecting the current account (<guilabel>Tot Deposit</guilabel>
      here), and updated account <guilabel>Balance</guilabel> after the
      current transaction. Note that in the expanded view, the
      <guilabel>Transfer</guilabel> column heading disappears, and there is no
      account name listed in that field. This line shows you only a summary of
      the transaction&rsquo;s effect on the current account. For more detailed
      information, you need to look at the individual splits that make up the
      transaction.</para>

      <para>The partial lines below the transaction line are the
      <emphasis>split lines</emphasis>, and they are separated by gray lines.
      As you highlight one of the split lines, the column headings change to
      show the split-related fields:</para>

      <screenshot id="txns-registersplit2">
        <mediaobject>
          <imageobject>
            <imagedata fileref="figures/txns_registersplit2.png" format="PNG"
                       srccredit="Bengt Thuree" />
          </imageobject>

          <textobject>
            <phrase>How split headings change</phrase>
          </textobject>

          <caption><para>This image shows how split headings
          change.</para></caption>
        </mediaobject>
      </screenshot>

      <para>Each split contains an optional <guilabel>Action</guilabel>, or
      type of split, which you can either type in or choose from a pull-down
      list. The split also contains an optional <guilabel>Memo</guilabel>
      which describes the split. Each split affects an
      <guilabel>Account</guilabel>, which can be selected from a pull-down
      list of your accounts. The <guilabel>R</guilabel> field indicates
      whether the split has been reconciled. The last two columns show the
      amount of the split and whether money is coming into or going out of the
      account.</para>

      <para>As we discussed in <xref linkend="basics-accounting1" />, total
      debits (left-column entries) must equal total credits (right-column
      entries) for each transaction. In the example shown above, the total
      debits equal the total credits, so this transaction is balanced. If you
      notice, the transaction line contains the same debit amount as the
      <guilabel>Checking</guilabel> split line. Why is this shown twice?
      Because the transaction line is merely a <emphasis>summary</emphasis> of
      the transaction&rsquo;s effect on the current account. The same transaction in
      a different account will have a different transaction line, one that
      shows the effect on that particular account. You can see this by
      highlighting another split line and clicking the
      <guibutton>Jump</guibutton> button on the <emphasis>Toolbar</emphasis>.</para>

      <para>In this example, if you jump to the
      <emphasis>Income:Salary</emphasis> account, <application>&app;</application> brings up the same
      transaction in the <emphasis>Income:Salary</emphasis> - Register:</para>

      <screenshot id="txns-registersplit3">
        <mediaobject>
          <imageobject>
            <imagedata fileref="figures/txns_registersplit3.png" format="PNG"
                       srccredit="Bengt Thuree" />
          </imageobject>

          <textobject>
            <phrase>A jump to the <emphasis>Income:Salary</emphasis> account</phrase>
          </textobject>

          <caption><para>This image shows a jump to the
          <emphasis>Income:Salary</emphasis> account.</para></caption>
        </mediaobject>
      </screenshot>

      <para>Note that the transaction line total now summarizes the effect on
      the <emphasis>Income:Salary</emphasis> account instead of the
      <emphasis>Checking Account</emphasis>, because you are looking at the
      <emphasis>Income:Salary</emphasis> account register. The splits are
      exactly the same, but the transaction line now reflects the credit to
      the <emphasis>Income:Salary</emphasis> account.</para>

      <para>At the bottom left of the register window, <application>&app;</application> displays
      helpful messages as you move about the register. To the right, you can
      see the current account balance and the total of cleared splits.</para>
    </sect2>

  </sect1>

  <sect1 id="txns-regstyle1">
    <title>Choosing a Register Style</title>

    <para><application>&app;</application> offers several options for viewing your registers. The
    default style is <guilabel>Basic Ledger</guilabel> mode, which displays
    only the summary of splits affecting the current account. This is the
    style that most closely resembles other popular personal financial
    packages.</para>

    <para>You can choose a different register style by selecting
    <menuchoice><guimenu>View</guimenu><guimenuitem>Auto-Split Ledger</guimenuitem></menuchoice>
    style expands the current transaction automatically. As you highlight a
    new transaction in the register, the transaction automatically expands to
    show all splits. The <menuchoice><guimenu>View</guimenu><guimenuitem>Transaction
    Journal</guimenuitem></menuchoice> style is more like an accounting journal, in which
    all splits are shown for all transactions.</para>

    <para>All styles permit you to view your data in either single-line or
    double-line format. Select <menuchoice><guimenu>View</guimenu>
    <guimenuitem>Double Line</guimenuitem></menuchoice>, and you will see your transaction
    line expand to two register lines.</para>
    
    <para>Let&rsquo;s have a closer look at how the Basic Ledger and Transaction Journal view differs.
    </para>
    <para>For this example, let&rsquo;s assume that you have a checking account with $10,000,
    and have decided to really splurge by purchasing 3 pair of Jeans for $1,000.
    Now, you can either record this as one simple transaction and move $1,000 to <emphasis>Expenses:Clothes</emphasis>.
    Or, you can record a split transaction, and record each Jeans individually.</para>
    <para>Technically they are the same, but from an accounting point of view, when you 
    record each Jeans purchase separately, the <emphasis>Expenses:Clothes</emphasis> account will record three
    different transactions.</para>
    <para>The below screenshots will illustrate this a bit better</para>
    
    <para>First let&rsquo;s purchase the Jeans from your checking account</para>
    
          <screenshot id="txns-registersplit4">
        <mediaobject>
          <imageobject>
            <imagedata fileref="figures/txns_registersplit4.png" format="PNG"
                       srccredit="Bengt Thuree" />
          </imageobject>

          <textobject>
            <phrase>3 Jeans purchases</phrase>
          </textobject>

          <caption><para>
            This image shows one split transaction with 3 Jeans purchases
          </para></caption>
        </mediaobject>
      </screenshot>
      
     <para>The we open the <emphasis>Expenses:Clothes</emphasis> account, and look at it from the default Basic Ledger view.
     As you can see, we have three entries here, but there were only one entry in the checking account.
     If you look carefully, you will see that each row have a different amount, $200, $300, and $500.
     Each row&rsquo;s transaction line reflects a one split row.</para> 
      <screenshot id="txns-registersplit5">
        <mediaobject>
          <imageobject>
            <imagedata fileref="figures/txns_registersplit5.png" format="PNG"
                       srccredit="Bengt Thuree" />
          </imageobject>

          <textobject>
            <phrase>A jump to the <emphasis>Expenses:Clothes</emphasis> account</phrase>
          </textobject>

          <caption><para>This image shows <emphasis>Expenses:Clothes</emphasis> account
          in Basic Ledger mode.</para></caption>
        </mediaobject>
      </screenshot>
      
      <para>If we view the <emphasis>Expenses:Clothes</emphasis> account in Transaction Journal mode, you will again, only see
      the original split transaction.</para>
      
      <screenshot id="txns-registersplit6">
        <mediaobject>
          <imageobject>
            <imagedata fileref="figures/txns_registersplit6.png" format="PNG"
                       srccredit="Bengt Thuree" />
          </imageobject>

          <textobject>
            <phrase>A jump to the <emphasis>Expenses:Clothes</emphasis> account</phrase>
          </textobject>

          <caption><para>This image shows <emphasis>Expenses:Clothes</emphasis> account in
          Transaction Journal mode.</para></caption>
        </mediaobject>
      </screenshot>

    
  </sect1>

  <sect1 id="txns-shortcuts1">
    <title>Using Entry Shortcuts</title>

    <para><application>&app;</application> provides several time-saving shortcuts for entering your
    data. When you type the first few characters of a description that you
    have used before, the QuickFill feature automatically fills in the rest of
    the transaction as you last entered it. When you type in the first
    characters of an account name in either the <guilabel>Transfer</guilabel>
    field of the transaction line or the <guilabel>Account</guilabel> field of
    the split line, QuickFill will automatically complete the name from your
    account list. It also helps you with entering sub-accounts in these
    fields: simply type the first characters of the parent account name
    followed by a colon and the first characters of the sub-account name. For
    example, to enter <emphasis>Assets:Checking</emphasis>, you might type
    <userinput>A:C</userinput> and let <application>&app;</application> fill in the rest.</para>

    <para>Register keyboard shortcuts also save you time, and <application>&app;</application> provides
    several of them. In the date field, you can type:</para>

    <itemizedlist>
      <listitem>
        <para><keycap>+</keycap> or <keycap>=</keycap> to increment the date
        and <keycap>-</keycap> or <keycap>_</keycap> to decrement the
        date</para>
      </listitem>

      <listitem>
        <para><keycap>]</keycap> or <keycap>}</keycap> to increment the month
        and <keycap>[</keycap> or <keycap>{</keycap> to decrement the
        month</para>
      </listitem>

      <listitem>
        <para><keycap>M</keycap> or <keycap>m</keycap> to enter the first date
        of the month</para>
      </listitem>

      <listitem>
        <para><keycap>H</keycap> or <keycap>h</keycap> to enter the last date
        of the month</para>
      </listitem>

      <listitem>
        <para><keycap>Y</keycap> or <keycap>y</keycap> to enter the first date
        of the year</para>
      </listitem>

      <listitem>
        <para><keycap>R</keycap> or <keycap>r</keycap> to enter the last date
        of the year</para>
      </listitem>

      <listitem>
        <para><keycap>T</keycap> or <keycap>t</keycap> to enter today&rsquo;s
        date</para>
      </listitem>
    </itemizedlist>

    <para>In the <guilabel>Num</guilabel> field of the transaction line, you
    can type <keycap>+</keycap> to increment the transaction number from the
    last one you typed in. Typing <keycap>-</keycap> will decrement the
    number. This will also work in the <guilabel>Action</guilabel> field of
    the split line, if you choose to enter split numbers there. The
    <guilabel>Action</guilabel> field also supports QuickFill - if you type
    the first characters of a common action (such as
    <guilabel>Deposit</guilabel>), <application>&app;</application> will fill in the rest.</para>

    <para>The <guilabel>Transfer</guilabel> field supports QuickFill
    of account names.  You can start typing an account name and
    <application>&app;</application> will fill in the remaining part of the name.  Typing the
    separator character at any time will complete the current level of
    the account name, leaving the cursor positioned to start the next
    level of account name.  For example, typing <keycap>A:C</keycap> the
    standard set of account names will complete to the
    <emphasis>Assets:Checking</emphasis> account.  You can also type the
    <keycap>Menu</keycap> or <keycombo><keycap>Ctrl</keycap><keycap>Down</keycap></keycombo> keys in this
    field to pop up a list of all account names.</para>

    <para>In any of the amount fields, you can use a built-in calculator.
    Simply type in the first value, followed by <keycap>+</keycap>,
    <keycap>-</keycap>, <keycap>*</keycap>, or <keycap>/</keycap>, then type
    in the second value. <application>&app;</application> will perform the calculation and return the
    resulting value to the amount field when you press the
    <keycap>Tab</keycap> key.</para>

    <para>All of the menu items have access keys defined, and these are marked
    by underlined characters in the menu names. Press <keycap>Alt</keycap> +
    [underlined character] to bring up the menu, then select an item by typing
    its underlined character. For example, typing <keycombo>
        <keycap>Alt</keycap>

        <keycap>A</keycap>
      </keycombo> brings up the Actions menu, then typing
    <keycap>P</keycap> will split the transaction. A few of the menu items
    also have shortcut keys that immediately invoke the command (typically
    using the <keycap>Ctrl</keycap> key).  These shortcuts are listed next
    to the item.</para>

    <para>To move around the register, use these keys to save time:</para>

    <itemizedlist>
      <listitem>
        <para><keycap>Tab</keycap> to move to the next field, <keycombo>
            <keycap>Shift</keycap>

            <keycap>Tab</keycap>
          </keycombo> to move to the previous field</para>
      </listitem>

      <listitem>
        <para><keycap>Home</keycap> to move to the beginning of the field,
        <keycap>End</keycap> to move to the end of the field</para>
      </listitem>

      <listitem>
        <para><keycap function="enter">Enter</keycap> or <keycap>↓</keycap> to move to the next
        transaction, <keycap>↑</keycap> to move to the previous
        transaction</para>
      </listitem>

      <listitem>
        <para><keycap>Page Up</keycap> to move up one screen, <keycap>Page
        Down</keycap> to move down one screen</para>
      </listitem>

      <listitem>
        <para><keycombo>
            <keycap>Shift</keycap>

            <keycap>Page Up</keycap>
          </keycombo> to go to the first transaction, <keycombo>
            <keycap>Shift</keycap>

            <keycap>Page Down</keycap>
          </keycombo> to go to the last transaction</para>
      </listitem>
    </itemizedlist>

    <para>In the <guilabel>Reconcile</guilabel> window you can use these
    keyboard shortcuts:</para>

    <itemizedlist>
      <listitem>
        <para><keycap>Tab</keycap> moves to the next box and
        <keycombo><keycap>Shift</keycap><keycap>Tab</keycap></keycombo>
        moves to the previous
        box</para>
      </listitem>

      <listitem>
        <para>Space bar toggles the status between reconciled and not
        reconciled</para>
      </listitem>

      <listitem>
        <para><keycap>↑</keycap> and <keycap>↓</keycap> navigate through the
        entries within the current box</para>
      </listitem>
    </itemizedlist>
  </sect1>

  <sect1 id="txns-reconcile1">
    <title>Reconciliation</title>

    <para>Transactions are typically checked against bank statements - a
    process known as <emphasis>reconciliation</emphasis>. <application>&app;</application> keeps track of the
    reconciliation status of each transaction.</para>

    <para>The reconciliation status of a transaction is shown by the
    reconciliation <guilabel>R</guilabel> field. <emphasis>y</emphasis> indicates that a transaction has been
    reconciled, <emphasis>n</emphasis> indicates that it has not, and <emphasis>c</emphasis> indicates that it has
    been cleared, but not reconciled. You can toggle the reconciliation status
    between <emphasis>n</emphasis> and <emphasis>c</emphasis> by clicking in the <guilabel>R</guilabel> field; you can set 
    it to <emphasis>y</emphasis> by using the <guilabel>Reconciliation Window</guilabel>.</para>
    
      <para>At the bottom of the account window, there are (among others) two running
      balances (the <guilabel>cleared</guilabel> and <guilabel>reconciled</guilabel> balance), and the 
      <guilabel>total</guilabel> balance. The formers balances should correspond to how much money
      the bank thinks you have in your account, while the latter includes outstanding transactions.</para>

      <para>For example, when you write a check for something, you should
      enter the transaction into <application>&app;</application>. The reconciliation <guilabel>R</guilabel> field of the
      transaction will initially contain <guilabel>n</guilabel> (new). Your new entry will
      contribute to the <guilabel>total</guilabel> balance, but not to the <guilabel>cleared</guilabel> and
      <guilabel>reconciled</guilabel> balance. Later, if you think that the check has been cashed,
      you might click on the transaction&rsquo;s <guilabel>R</guilabel> field to change it to <emphasis>c</emphasis>
      (cleared). When you do this, the <guilabel>cleared</guilabel> balance will
      change to include this amount. When the bank statement arrives, you can
      then compare it to what you&rsquo;ve recorded in <application>&app;</application> by opening the reconciliation
      window. There, you will be able to change the <guilabel>R</guilabel> field to <emphasis>y</emphasis> (reconciled).</para>
      
      <note>
        <para>You cannot reconcile in the register window, you must use the
        reconciliation window. Once a transaction has been marked <emphasis>reconciled</emphasis>,
        it can no longer be easily changed without breaking the 
        <link linkend="rec-start-blnc"><guilabel>Starting Balance</guilabel></link> of the next reconciliation.</para>
      </note>

    <sect2 id="txns-reconcile-window2">
      <title>Reconcile windows</title>

      <para>The reconciliation windows are used to reconcile a <application>&app;</application> account
      with a statement that a bank or other institution has sent you.
      Reconciliation is useful not only to double-check your records against
      those of your bank, but also to get a better idea of outstanding
      transactions, e.g. uncashed checks.</para>

      <para>To use the reconciliation windows, select an account from the
      account tree and click on <menuchoice><guimenu>Actions</guimenu>
      <guimenuitem>Reconcile</guimenuitem></menuchoice>. A window like the one below will appear in which you can
      enter the reconcile information.</para>

      <screenshot id="txns-reconcile-window-1">
        <mediaobject>
            <imageobject role="html">
              <imagedata fileref="figures/txns_reconcile_window1.png"
                         format="PNG" srccredit="Cristian Marchi"></imagedata>
            </imageobject>
            <imageobject role="fo">
              <imagedata fileref="figures/txns_reconcile_window1.png"
                         format="PNG" srccredit="Cristian Marchi"></imagedata>
            </imageobject>

          <textobject>
            <phrase>Reconcile Window</phrase>
          </textobject>

          <caption><para>The initial reconcile window.</para></caption>
        </mediaobject>
      </screenshot>

      <para>In the initial reconcile window, some <guilabel>Reconcile Information</guilabel> need to be entered.</para>
      <variablelist>
        <varlistentry><term><guilabel>Statement Date</guilabel></term>
          <listitem>
            <para>The date of the statement you will be reconciling against.</para>
	  <tip>
	    <para>Click on the down arrow in the right of this field to open a calendar</para>
	  </tip>
          </listitem>
        </varlistentry>

        <varlistentry id="rec-start-blnc"><term><guilabel>Starting Balance</guilabel></term>
          <listitem>
            <para>This is a non-editable item which displays the balance from the previous
            reconciliation. It should match the starting balance in your statement.</para>

	  <note>
	    <para>Sometimes, the opening balance in <application>&app;</application> does not match that 
	    found on your statement. This can happen the first time you reconcile your account or 
	    when a previously-reconciled transaction is de-reconciled or deleted.</para>
	  </note>
	  
	  <para>The first time you reconcile your account, the <guilabel>starting balance</guilabel> will 
	  be <guilabel>0.00</guilabel>, thus probably not the  <emphasis>opening balance</emphasis> of your account. 
	  When you reconcile the account, the <emphasis>opening balance</emphasis> for the account 
	  will be included in the reconciliation, and the result should balance.</para>
            
	  <para>In the case when a previously-reconciled transaction is accidentally de-reconciled, you can simply 
	  re-reconcile the transaction along with the transactions on the current statement, and the
            result should balance.</para>

            <para>The case of accidentally deleting a previously-reconciled transaction presents
            more of a challenge; if you cannot determine what was
            deleted and restore it to the register, you will have to create a dummy
            transaction to get the reconciliation to finish.</para>
          </listitem>
        </varlistentry>

        <varlistentry><term><guilabel>Ending Balance</guilabel></term>
          <listitem>
            <para>This field should be filled with the ending balance as it appears in the statement.</para>
	  <note>
	    <para><application>&app;</application> automatically fills this field with the 
	    <guilabel>Present</guilabel> balance as shown in the lower part of the 
	    account&rsquo;s register.</para>
	  </note>
          </listitem>
        </varlistentry>

        <varlistentry><term><guilabel>Include Sub-accounts</guilabel></term>
          <listitem>
            <para>Check this option if you want to include in the reconciliation the transactions
            that belongs to the sub-accounts of the currently selected account.</para>
          </listitem>
        </varlistentry>

        <varlistentry><term><guibutton>Enter Interest Payment</guibutton></term>
          <listitem>
            <para>Clicking this button opens a new window that allow you to enter an interest transaction to the account to be
            reconciled.</para>
	    <tip>
	      <para>The <guilabel>Interest Payment</guilabel> window might be opened automatically when you start a reconciliation 
	      for an account of the type <emphasis>Bank</emphasis>, <emphasis>Credit</emphasis>, 
	      <emphasis>Mutual</emphasis>, <emphasis>Asset</emphasis>, <emphasis>Receivable</emphasis>,
	      <emphasis>Payable</emphasis>, and <emphasis>Liability</emphasis>. If you want to disable
	      this behavior for any of the previous accounts, go to the <guilabel>Register</guilabel> tab of the 
	      <guilabel>&app; Preferences</guilabel> and uncheck the <guilabel>Automatic interest transfer</guilabel>
	      option. Alternatively, to disable this behavior only for the selcted account, press the 
	      <guibutton>No Auto Interest Payments for this Account</guibutton> button in the 
	      <guilabel>Interest Payment</guilabel> window.</para>
	    </tip>  
          </listitem>
        </varlistentry>
       </variablelist>

      <para>Then, click on the <guibutton>Ok</guibutton> button, and you will see
      the transactions listing reconcile window:</para>

      <screenshot id="txns-reconcile-window-2">
        <mediaobject>
            <imageobject role="html">
              <imagedata fileref="figures/txns_reconcile_window2.png"
                         format="PNG" srccredit="Cristian Marchi" width="510"></imagedata>
            </imageobject>
            <imageobject role="fo">
              <imagedata fileref="figures/txns_reconcile_window2.png"
                         format="PNG" srccredit="Cristian Marchi"></imagedata>
            </imageobject>

          <textobject>
            <phrase>Reconcile Window</phrase>
          </textobject>

          <caption><para>The transactions listing in the reconcile
          window.</para></caption>
        </mediaobject>
      </screenshot>

      <para>The two panes called <guilabel>Funds In</guilabel> and
      <guilabel>Funds Out</guilabel>, lists all the unreconciled transactions that belongs to the account 
      that is going to be reconciled.
      The <guilabel>R</guilabel> columns show whether the transactions have been reconciled.</para>
      
      <para>Now, examine each item on the bank statement, and look for the
      matching item in the <guilabel>Reconcile</guilabel> window.</para>

      <para>If you cannot find a transaction, then perhaps you forgot to enter it, or did not know that the transaction 
      had happened. You can use the <guibutton>New</guibutton> button on the <emphasis>Toolbar</emphasis>, or the 
      <menuchoice><guimenu>Transaction</guimenu><guimenuitem>New</guimenuitem></menuchoice>
      menu item in the  menu, to open a register window and enter the missing
      transaction. The new item will appear in the <guilabel>Reconcile</guilabel> window when you
      press the <guibutton>Enter</guibutton> button in the register after entering the transaction.</para>

      <para>When you find the item in the <guilabel>Reconcile</guilabel> window, compare the amount
      in the item to the amount on the statement. If they disagree, you may
      have made an error when you entered the transaction in <application>&app;</application>. You can
      use the <guibutton>Edit</guibutton> button on the <emphasis>Toolbar</emphasis>, or the
      <menuchoice><guimenu>Transaction</guimenu><guimenuitem>Edit</guimenuitem></menuchoice>
      item, to open a register window and correct the transaction.</para>

      <para>If the amounts agree, click on the item in the <guilabel>Reconcile</guilabel> window.
      A check mark wil appear in the <guilabel>R</guilabel> column aside the selected transaction. 
      <application>&app;</application> will automatically update the amounts in the lower right summary pane.</para>
      
      <tip>
        <para>You can use the <keycap>up</keycap>/<keycap>down</keycap> arrow keys to scroll to the item, the
        <keycap>space</keycap> key to mark the item as reconciled and the <keycap>Tab</keycap> 
        key to switch panes.</para>
      </tip>

      <para>You then repeat this for each item that appears on the bank
      statement, verifying that the amounts match with the amounts in <application>&app;</application>,
      and marking off transactions in <application>&app;</application> as they are reconciled.</para>

      <para>At the bottom of the <guilabel>Reconcile</guilabel> window there is a <guilabel>Difference</guilabel> field,
      which should show <guilabel>0.00</guilabel> when you are done reconciling. If it shows some
      other value, then either you have missed transactions, or some amounts
      may be incorrect in <application>&app;</application>. (Or, less likely, the bank may have made an
      error.)</para>

      <para>When you have marked off all the items on the bank statement, and
      when the difference is 0.00, press the <guibutton>Finish</guibutton> button on the <emphasis>Toolbar</emphasis> or
      select <menuchoice><guimenu>Reconcile</guimenu><guimenuitem>Finish</guimenuitem></menuchoice> from the menu. 
      The <guilabel>Reconcile</guilabel> window will close.
      In the register window, the <guilabel>R</guilabel> field of the reconciled transactions will
      change to <emphasis>y</emphasis>.</para>

      <para>In this case, we have not received all the information yet, so we
      simply press the <guibutton>Postpone</guibutton> button, so we can continue at
      a later stage. Observe that the <guilabel>R</guilabel> column indicates we cleared (<emphasis>c</emphasis>)
      two transactions. They have not been reconciled yet, but we have
      verified these two transactions so they have been marked as cleared. If
      you look at the <emphasis>Statusbar</emphasis> at the bottom of the account register, you
      will see a summary of what has been reconciled and what has been cleared
      (<guilabel>Cleared:USD 954.79 Reconciled:USD 0.00</guilabel>)</para>

      <screenshot id="txns-reconcile-window-3">
        <mediaobject>
          <imageobject>
            <imagedata fileref="figures/txns_reconcile_window3.png"
                       format="PNG" srccredit="Bengt Thuree" />
          </imageobject>

          <textobject>
            <phrase>Checking account</phrase>
          </textobject>

          <caption><para>The Checking account after postponing the
          reconciliation.</para></caption>
        </mediaobject>
      </screenshot>
    </sect2>
  </sect1>

  <sect1 id="txns-sxn1">
    <title>Scheduled Transactions</title>

    <para>Scheduled transactions are made to help entering repetitive money
    operations, like subscriptions, insurances or taxes. By using scheduled
    transactions, you only have to enter the concerned transaction once, set a
    few parameters like start date, frequency and a little description, and
    then <application>&app;</application> will tell you whenever a scheduled transaction is ready to be
    created, and create it for you.</para>

    <para>In this howto, we&rsquo;ll take a monthly Internet subscription of 20 USD
    as example, which is taken on the 28th of each month.</para>

    <para>In <application>&app;</application>, there are two ways of creating scheduled transactions,
    <link linkend="txns-sxn-ledger2">from the ledger</link> or from the 
    <link linkend="txns-sxn-editor2">Scheduled Transactions Editor</link>.</para>

    <sect2 id="txns-sxn-ledger2">
      <title>Creating from the Ledger</title>

      <para>Enter the first occurrence of your to-schedule transaction in the
      ledger. In the <guilabel>Transfer</guilabel> field for this transaction, type 
      <emphasis>Expenses:Internet</emphasis> as shown in the next screenshot.</para>

      <screenshot id="txns-sxn-ledger-1">
        <mediaobject>
          <imageobject>
            <imagedata fileref="figures/txns_sxn_ledger1.png" format="PNG"
                       srccredit="Bengt Thuree" />
          </imageobject>

          <textobject>
            <phrase>Step one creating scheduled transaction from the
            ledger</phrase>
          </textobject>

          <caption><para>Step one creating scheduled transaction from the
          ledger</para></caption>
        </mediaobject>
      </screenshot>

      <note>
        <para>Since we did not create the <emphasis>Expenses:Internet</emphasis> account, <application>&app;</application>
        will prompt us to create it.</para>
      </note>

      <para>Then you right click on your transaction and select
      <guilabel>Schedule...</guilabel></para>

      <screenshot id="txns-sxn-ledger-2">
        <mediaobject>
          <imageobject>
            <imagedata fileref="figures/txns_sxn_ledger2.png" format="PNG"
                       srccredit="Bengt Thuree" />
          </imageobject>

          <textobject>
            <phrase>Step two creating scheduled transaction from the
            ledger</phrase>
          </textobject>

          <caption><para>Step two creating scheduled transaction from the
          ledger</para></caption>
        </mediaobject>
      </screenshot>

      <para>A window like this will appear:</para>

      <screenshot id="txns-sxn-ledger-3">
        <mediaobject>
          <imageobject>
            <imagedata fileref="figures/txns_sxn_ledger3.png" format="PNG"
                       srccredit="Bengt Thuree" />
          </imageobject>

          <textobject>
            <phrase>Step three creating scheduled transaction from the
            ledger</phrase>
          </textobject>

          <caption><para>Step three creating scheduled transaction from the
          ledger</para></caption>
        </mediaobject>
      </screenshot>

      <para>Let&rsquo;s fill the values, we know that the subscription is taken on
      the 28th each month, and the next one is for next month (since we
      entered the one for this month manually) :</para>

      <screenshot id="txns-sxn-ledger-4">
        <mediaobject>
          <imageobject>
            <imagedata fileref="figures/txns_sxn_ledger4.png" format="PNG"
                       srccredit="Bengt Thuree" />
          </imageobject>

          <textobject>
            <phrase>Filling in data to a scheduled transaction</phrase>
          </textobject>

          <caption><para>Filling in data to a scheduled
          transaction</para></caption>
        </mediaobject>
      </screenshot>

      <para>Click the <guibutton>OK</guibutton> button, and the transaction will be scheduled.
      <application>&app;</application> now has memorized this scheduled transaction and on the 28th of
      next month, it will pop up a window asking if it should create it (see
      far below for a screenshot of this window).</para>
    </sect2>

    <sect2 id="txns-sxn-editor2">
      <title>Creating from the Editor</title>

      <para>Another way of entering a scheduled transaction is from the
      <guilabel>Scheduled Transaction Editor</guilabel>, it may be faster if we have several
      scheduled transactions to create at once.</para>

      <para>From the main accounts windows, select 
      <menuchoice><guimenu>Actions</guimenu><guisubmenu>Scheduled Transactions</guisubmenu>
      <guimenuitem>Scheduled Transaction Editor</guimenuitem></menuchoice> from the <emphasis>Menubar</emphasis>.
      A new <guilabel>Scheduled Transactions</guilabel> tab will be opened in the
      current <application>&app;</application> window as shown above:</para>

      <screenshot id="txns-sxn-editor-2">
        <mediaobject>
          <imageobject role="html">
            <imagedata fileref="figures/txns_sxn_editor-2.png" format="PNG"
                       srccredit="Cristian Marchi" width="510"/>
          </imageobject>

          <imageobject role="fo">
            <imagedata fileref="figures/txns_sxn_editor-2.png" format="PNG"
                       srccredit="Cristian Marchi"/>
          </imageobject>

          <textobject>
            <phrase>Empty <guilabel>Scheduled Transactions</guilabel> tab</phrase>
          </textobject>

          <caption><para>Empty <guilabel>Scheduled Transactions</guilabel> tab</para></caption>
        </mediaobject>
      </screenshot>

      <para>This tab contains a list, now empty, of all the scheduled
      transactions. Let&rsquo;s create a new one by clicking on the <guibutton>New</guibutton> 
      button in the <emphasis>Toolbar</emphasis>. A window like the one below will pop up:</para>

      <screenshot id="txns-sxn-editor-3-overview">
        <mediaobject>
          <imageobject role="html">
            <imagedata fileref="figures/txns_sxn_editor-3-overview.png" format="PNG"
                       srccredit="Cristian Marchi" width="510"/>
          </imageobject>

          <imageobject role="fo">
            <imagedata fileref="figures/txns_sxn_editor-3-overview.png" format="PNG"
                       srccredit="Cristian Marchi" />
          </imageobject>

          <textobject>
            <phrase><guilabel>Edit Scheduled Transaction</guilabel> &mdash;
            <guilabel>Overview</guilabel> tab</phrase>
          </textobject>

          <caption><para><guilabel>Edit Scheduled Transaction</guilabel> &mdash;
            <guilabel>Overview</guilabel> tab</para></caption>
        </mediaobject>
      </screenshot>

      <para>First, let&rsquo;s enter a name for this new scheduled
      transaction in the top of the window.</para>
      <note>
        <para>This name will only identify the transaction
        in the <guilabel>Edit Scheduled Transaction</guilabel> window, 
        it will never appear in the ledger.</para>
      </note>

      <para>In the <guilabel>Options</guilabel> pane of the <guilabel>Overview</guilabel>
      tab you have four options:</para>
      
      <variablelist>
        <varlistentry><term><guilabel>Enable</guilabel></term>
          <listitem>
            <para>Sets the status of the scheduled transaction.</para>
          </listitem>
        </varlistentry>

        <varlistentry><term><guilabel>Create automatically</guilabel></term>
          <listitem>
            <para>If enabled, will insert this transaction in the
            ledger without asking you before (see below). If needed, you can be advised
            when the transaction is entered by checking the <guilabel>Notify me when created</guilabel>
            option.</para>
          </listitem>
        </varlistentry>

        <varlistentry><term><guilabel>Create in advance</guilabel></term>
          <listitem>
            <para>Sets how many days in advance the transaction will be created.</para>
          </listitem>
        </varlistentry>
        
        <varlistentry><term><guilabel>Remind in advance</guilabel></term>
          <listitem>
            <para>Sets how many days in advance a reminder is presented. This
            can be used, for example, when you have to pay something by check, and a reminder
            one week before allows you to send your check before the deadline.</para>
          </listitem>
        </varlistentry>  
      </variablelist>

      <para>The <guilabel>Occurences</guilabel> pane allows you to tell <application>&app;</application> that 
      this scheduled transaction won&rsquo;t last for ever. For example if you are repaying a loan,
      you can enter the loan end date or the number of occurences left.</para>
      
      <para>Select now the <guilabel>Frequency</guilabel> tab in the <guilabel>Edit Scheduled Transaction</guilabel> window.
      Here you can set the time-related options of the transaction.</para>
      
      <screenshot id="txns-sxn-editor-3-frequency">
        <mediaobject>
          <imageobject role="html">
            <imagedata fileref="figures/txns_sxn_editor-3-frequency.png" format="PNG"
                       srccredit="Cristian Marchi" width="510"/>
          </imageobject>

          <imageobject role="fo">
            <imagedata fileref="figures/txns_sxn_editor-3-frequency.png" format="PNG"
                       srccredit="Cristian Marchi" />
          </imageobject>

          <textobject>
            <phrase><guilabel>Edit Scheduled Transaction</guilabel> &mdash;
            <guilabel>Frequency</guilabel> tab</phrase>
          </textobject>

          <caption><para><guilabel>Edit Scheduled Transaction</guilabel> &mdash;
            <guilabel>Frequency</guilabel> tab</para></caption>
        </mediaobject>
      </screenshot>      
      
      <variablelist>
        <varlistentry><term><guilabel>Frequency</guilabel></term>
          <listitem>
            <para>Sets the basic frequency of the transaction, with options for <guilabel>once</guilabel>,
            <guilabel>daily</guilabel>, <guilabel>weekly</guilabel>, <guilabel>semi-monthly</guilabel> and 
            <guilabel>monthly</guilabel>.
            In this example, this is set to <guilabel>monthly</guilabel>.</para>
            <note>
              <para>It is possible to set a transaction to occur at intervals <emphasis>other</emphasis> than
              those listed in the <guilabel>Frequency</guilabel> list, by changing the setting in the 
              <guilabel>Every</guilabel> control (see below).</para>
            </note>
          </listitem>
        </varlistentry>

        <varlistentry><term><guilabel>Start Date</guilabel></term>
          <listitem>
            <para>Sets when the transaction will begin. In the example, this would
            be set to the start of the next month.</para>
          </listitem>
        </varlistentry>
        
        <varlistentry><term><guilabel>Every</guilabel></term>
          <listitem>
            <para>This option allows you to schedule transactions by multiplies of the value in
            <guilabel>Frequency</guilabel>. For example, to create a transaction that runs every 3 weeks, set
            <guilabel>Frequency</guilabel> to <guilabel>Weeks</guilabel> and <guilabel>Every</guilabel> to 
            <guilabel>3</guilabel>.</para>
          </listitem>
        </varlistentry>
         
        <varlistentry><term><guilabel>On the</guilabel> and <guilabel>Except on weekends</guilabel></term>
          <listitem>
            <para>Sets the day of the month that the transaction is scheduled, and controls what 
            <application>&app;</application> will do when the day occurs on a weekend day.</para>
          </listitem>
        </varlistentry>
      </variablelist>
        
      <note>
        <para>We know that the subscription is taken on the 28th each month, so the <guilabel>Start date</guilabel> 
        will be November 1, 2003 (assuming November is the next month), the <guilabel>Frequency</guilabel> will be
        <guilabel>Monthly</guilabel>, it will be taken every month on the 28th. Since in our example the internet 
        subscription is automatically taken from the account, we have no need to create it in advance, nor
        give an end date.</para>
      </note>
     
      <para>When the elements on this tab are filled in, <application>&app;</application> will highlights the
      calendar below to indicate when future transactions will be run.</para>

      <para>Finally select the <guilabel>Template Transaction</guilabel> tab and enter your transaction 
      in the lower part as you would do in the ledger, with the only difference of having no date.</para>

      <para>Now, you should have a window like this:</para>

      <screenshot id="txns-sxn-editor-3-template">
        <mediaobject>
          <imageobject role="html">
            <imagedata fileref="figures/txns_sxn_editor-3-template.png" format="PNG"
                       srccredit="Cristian Marchi" width="510"/>
          </imageobject>

          <imageobject role="fo">
            <imagedata fileref="figures/txns_sxn_editor-3-template.png" format="PNG"
                       srccredit="Cristian Marchi" />
          </imageobject>

          <textobject>
            <phrase><guilabel>Edit Scheduled Transaction</guilabel> &mdash;
            <guilabel>Template Transaction</guilabel> tab</phrase>
          </textobject>

          <caption><para><guilabel>Edit Scheduled Transaction</guilabel> &mdash;
            <guilabel>Template Transaction</guilabel> tab</para></caption>
        </mediaobject>
      </screenshot>

      <para>Remember to click on the <guibutton>Enter</guibutton> icon, to validate and enter the
      transaction.</para>

      <para>Now click <guibutton>OK</guibutton>, it takes you to the <guilabel>Scheduled Transactions</guilabel> tab, 
      now showing one item in the <guilabel>Transactions</guilabel> list:</para>

      <screenshot id="txns-sxn-editor-4">
        <mediaobject>
          <imageobject role="html">
            <imagedata fileref="figures/txns_sxn_editor-4.png" format="PNG"
                       srccredit="Cristian Marchi" width="510"/>
          </imageobject>

          <imageobject role="fo">
            <imagedata fileref="figures/txns_sxn_editor-4.png" format="PNG"
                       srccredit="Cristian Marchi" />
          </imageobject>

          <textobject>
            <phrase>Entered scehduled transaction</phrase>
          </textobject>

          <caption><para>Entered scehduled transaction</para></caption>
        </mediaobject>
      </screenshot>

      <tip>
        <para>If you click in the calendar part on the first day of one month, a
        small window, following your mouse, will show you what is planned for
        this day. To make the small window dissapear again, just click in it 
        one more time.</para>
      </tip>
      
      <para>You can now close the <guilabel>Scheduled Transaction</guilabel> tab, and
      <guilabel>save</guilabel> your work.</para>

      <note>
        <para>What comes below is just an illustration, and is not meant to be
        entered into the <application>&app;</application> database at this stage. As per this example,
        the below dialogs will appear when the scheduled transaction is
        supposed to run.</para>
      </note>

      <para>From now on, when <application>&app;</application> is launched and a scheduled 
      transaction is scheduled or need to be entered, 
      you may see a <guilabel>Since Last Run...</guilabel> window summarizing the scheduled transactions 
      operations (<guilabel>Reminder</guilabel>, <guilabel>To-Create</guilabel> etc... a better 
      description of each option can be found in the <application>&app;</application> manual):</para>

      <screenshot id="txns-sxn-editor-slr">
        <mediaobject>
          <imageobject role="html">
            <imagedata fileref="figures/txns_sxn_editor_slr.png" format="PNG"
                       srccredit="Cristian Marchi" width="510"/>
          </imageobject>

          <imageobject role="fo">
            <imagedata fileref="figures/txns_sxn_editor_slr.png" format="PNG"
                       srccredit="Cristian Marchi" />
          </imageobject>

          <textobject>
            <phrase>Scheduled transaction popup reminder</phrase>
          </textobject>

          <caption><para>Scheduled transaction popup reminder</para></caption>
        </mediaobject>
      </screenshot>

      <para>You can click on the <guilabel>Status</guilabel> column to change
      the scheduled transaction status if needed. Then just click on <guibutton>Ok</guibutton> to
      close the <guilabel>Since Last Run...</guilabel> window and to apply the pending operations.
      Select <guibutton>Cancel</guibutton> to skip entering in the ledger the pending operations.</para>

      <para>If the <guilabel>Status</guilabel> field was set to <guilabel>To-Create</guilabel>, 
      then if you take a look in your bank account register, you&rsquo;ll see the transaction has been created:</para>
     
      <tip>
        <para>If you enable the <guilabel>Review created transactions</guilabel> option in the lower right of the 
        <guilabel>Since Last Run...</guilabel> window, <application>&app;</application> will open, after pressing 
        <guibutton>Ok</guibutton>, the register tab of each account where the scheduled
        transactions were entered automatically.</para>
      </tip>

      <note>
        <para>If you entered the transaction for 28 of April at this stage,
        then please <emphasis>revert back</emphasis> to the last saved <application>&app;</application> file
        by selecting <menuchoice><guimenu>File</guimenu><guimenuitem>Open</guimenuitem></menuchoice> and
        choosing the previously saved <filename>gcashdata_3</filename> <application>&app;</application> file.</para>
      </note>
    </sect2>
  </sect1>

  <sect1 id="txns-puttoget1">
    <title>Putting It All Together</title>

    <para>In the previous sections of this chapter the concepts and mechanics
    of working with transactions in <application>&app;</application> have been discussed. This section
    will expand upon the chart of accounts initially built in the previous
    chapter, by setting some opening balances, adding transactions and a
    scheduled transaction.</para>

    <sect2 id="txns-puttoget-openfile">
      <title>Open <application>&app;</application> file</title>

      <para>Start with opening the previous datafile we stored,
      <filename>gcashdata_3emptyAccts</filename>, and store it as
      <filename>gcashdata_4</filename> directly. The main window should look
      something like this:</para>

      <screenshot id="txns-puttoget1-Charts">
        <mediaobject>
          <imageobject>
            <imagedata fileref="figures/txns_puttoget_Charts.png" format="PNG"
                       srccredit="Bengt Thuree" />
          </imageobject>

          <textobject>
            <phrase>Starting point for Putting It All Together</phrase>
          </textobject>

          <caption><para>This image shows the starting point for this
          section.</para></caption>
        </mediaobject>
      </screenshot>
    </sect2>

    <sect2 id="txns-puttoget-open2">
      <title>Opening Balances</title>

      <para>As shown earlier with the <emphasis>Assets:Checking</emphasis>
      account, the starting balances in an account are typically assigned to a
      special account called <emphasis>Equity:Opening Balance</emphasis>. To
      start filling in this chart of account, begin by setting the starting
      balances for the accounts. Assume that there is $1000 in the savings
      account and $500 charged on the credit card.</para>

      <orderedlist>
        <listitem>
          <para>Open the <emphasis>Assets:Savings</emphasis> account register.
          Select <guimenu>View</guimenu> from the menu and check to make sure
          you are in Basic Ledger style. You will view your transactions in
          the other modes later, but for now let&rsquo;s enter a basic transaction
          using the basic default style.</para>
        </listitem>

        <listitem>
          <para>From the <emphasis>Assets:Savings</emphasis> account register
          window, enter a basic 2 account transaction to set your starting
          balance to $1000, transferred from <emphasis>Equity:Opening Balance</emphasis>.
          Remember, basic transactions transfer money from
          a source account to a destination account. Record the transaction
          (press the <keycap function="enter">Enter</keycap> key, or click on 
          the <guibutton>Enter</guibutton> icon).</para>
        </listitem>

        <listitem>
          <para>From the <emphasis>Assets:Checking</emphasis> account register
          window, enter a basic 2 account transaction to set your starting
          balance to $1000, transferred from <emphasis>Equity:Opening Balance</emphasis>.</para>
        </listitem>

        <listitem>
          <para>From the <emphasis>Liabilities:Visa</emphasis> account
          register window, enter a basic 2 account transaction to set your
          starting balance to $500, transferred from <emphasis>Equity:Opening Balance</emphasis>.
          This is done by entering the $500 as a <guilabel>charge</guilabel>
          in the <emphasis>Visa</emphasis> account (or <guilabel>decrease</guilabel> in the <emphasis>Opening Balance</emphasis> account),
          since it is money you borrowed. Record the transaction (press the 
          <keycap function="enter">Enter</keycap> key, or click on 
          the <guibutton>Enter</guibutton> icon).</para>
        </listitem>
      </orderedlist>

      <para>You should now have 3 accounts with opening balances set.
      <emphasis>Assets:Checking</emphasis>,
      <emphasis>Assets:Savings</emphasis>, and
      <emphasis>Liabilities:Visa</emphasis>.</para>

      <screenshot id="txns-puttoget1-Charts1">
        <mediaobject>
          <imageobject>
            <imagedata fileref="figures/txns_puttoget_Charts1.png"
                       format="PNG" srccredit="Bengt Thuree" />
          </imageobject>

          <textobject>
            <phrase>Chart accounts after setting opening balance</phrase>
          </textobject>

          <caption><para>This image shows the opening
          balances.</para></caption>
        </mediaobject>
      </screenshot>
    </sect2>

    <sect2 id="txns-puttoget-add2">
      <title>Additional Transaction Examples</title>

      <para>Now add some more transactions to simulate a month&rsquo;s expenses.
      During the month, $78 is spent on electricity, $45 on phone, and $350 on
      rent. All paid by check. We also spent $45.21 on groceries, received $670
      as salary, and paid our Internet bill this month. Finally, let&rsquo;s move
      $100 from the savings account to the checking account.</para>

      <orderedlist>
        <listitem>
          <para>Open the <emphasis>Expenses:Electricity</emphasis> account
          register and enter a simple 2 account transaction to pay the $78
          electrical bill at the end of the current month (eg: March 28,
          2006). Enter a description (eg: Light Company) and the check number
          (eg: 102). The <guilabel>Transfer</guilabel> account should be
          <emphasis>Assets:Checking</emphasis>.</para>
        </listitem>

        <listitem>
          <para>Open the <emphasis>Assets:Checking</emphasis> account register
          and enter a simple 2 account transaction to pay the $45 phone bill
          at the end of the current month (eg: March 28, 2006). Enter a
          description (eg: Phone Company Name) and the check number (eg: 103).
          The <guilabel>Transfer</guilabel> account should be
          <emphasis>Expenses:Phone</emphasis>. Notice that you can enter
          expense transactions from either the credit side (the expense
          accounts) or the debit side (the asset account).</para>
        </listitem>

        <listitem>
          <para>Open the <emphasis>Expenses:Rent</emphasis> account register
          and enter a simple 2 account transaction to pay the $350 in rent at
          the end of the current month (eg: March 28, 2006). Enter a
          description (eg: April Rent) and the check number (eg: 104). The
          <guilabel>Transfer</guilabel> account should be
          <emphasis>Assets:Checking</emphasis>.</para>
        </listitem>

        <listitem>
          <para>Duplicate this transaction using the
          <guibutton>Duplicate</guibutton> button in the <emphasis>Toolbar</emphasis>. Start by
          clicking on the current rent transaction, and click on the
          <guilabel>Duplicate</guilabel> icon. Enter the transaction date a
          month out in the future (eg: April 28, 2006), and notice the blue
          line separator that <application>&app;</application> uses to separate future transactions
          from current ones. In this way, you can enter transactions before
          they occur.</para>

          <para>You could also set up a scheduled transaction to pay your
          rent, since the value of the rent is likely to be constant for the
          foreseeable future. <itemizedlist>
              <listitem>
                <para>Start by clicking on the current (April 28) rent
                transaction, and click on the <guilabel>Schedule</guilabel>
                icon</para>
              </listitem>

              <listitem>
                <para>Change to <guilabel>Monthly</guilabel>, change
                description if needed and press <guibutton>OK</guibutton></para>
              </listitem>
            </itemizedlist></para>
        </listitem>

        <listitem>
          <para>To transfer money from your savings account to your checking
          account, open the <emphasis>Assets:Savings</emphasis> account
          register, add a new transaction setting
          the <guilabel>Transfer</guilabel> to <emphasis>Assets:Checking</emphasis> in the amount
          of $100 (date 6 March, 2006).</para>
        </listitem>

        <listitem>
          <para>As another example of a simple 2 account transaction, add
          another transaction to describe the purchase of $45.21 worth of
          groceries on 5 of March. From within the <emphasis>Assets:Checking</emphasis> account, you
          would set <guilabel>Transfer</guilabel> to
          <emphasis>Expenses:Groceries</emphasis>. The account register should
          now appear:</para>
        </listitem>

        <listitem>
          <para>To add a paycheck transaction from the
          <emphasis>Assets:Checking</emphasis> account register window, click
          on a new transaction line, and click on <guilabel>Split</guilabel>.
          First enter the description of this transaction on the first line
          (eg: <quote>Employers R Us</quote>), as well as the date (14 March). In the
          <quote>split</quote> line below this, enter the deposit into
          <emphasis>Assets:Checking</emphasis> (eg:$670). Follow this with the various tax deposits
          (<emphasis>Assets:Checking</emphasis> (eg: $670),
          <emphasis>Expenses:Taxes:Federal</emphasis> account (eg: $180),
          <emphasis>Expenses:Taxes:Medicare</emphasis> account (eg: $90), and
          <emphasis>Expenses:Taxes:Social Security</emphasis> account (eg: $60)) and
          lastly the gross total of your paycheck (eg: $1000) as a withdrawal
          transfer from <emphasis>Income:Salary</emphasis>.</para>
        </listitem>

        <listitem>
          <para>You also need to pay for your Internet subscription of 20 USD on
          the 28th.</para>
        </listitem>
      </orderedlist>

      <screenshot id="txns-puttoget2-Charts1">
        <mediaobject>
          <imageobject>
            <imagedata fileref="figures/txns_puttoget_Charts2.png"
                       format="PNG" srccredit="Bengt Thuree" />
          </imageobject>

          <textobject>
            <phrase>Chart accounts after setting all the various
            transactions</phrase>
          </textobject>

          <caption><para>This image shows the ending balances after <xref
          linkend="chapter_txns" />.</para></caption>
        </mediaobject>
      </screenshot>
    </sect2>

    <sect2 id="txns-puttoget-save">
      <title>Save file</title>

      <para>Before we go to the report section, let&rsquo;s save the <application>&app;</application> data
      file (<filename>gcashdata_4</filename>).</para>
    </sect2>

    <sect2 id="txns-puttoget-reports">
      <title>Reports</title>

      <para>But only having data available on the computer screen will not
      make your accountant happy, therefore <application>&app;</application> comes with a large number
      of highly customizable reports.</para>

<!-- Add this note when the reports chapter is ready
      <note>
        <para>More details on the reports can be found in <xref linkend="chapter_reports" /></para>
      </note>
-->

      <para>Let&rsquo;s have a look at a <guilabel>Cash Flow</guilabel>, and a
      <guilabel>Transaction</guilabel> Report.</para>

      <orderedlist>
        <listitem>
          <para>First let&rsquo;s have a look at the <guilabel>Cash Flow</guilabel>
          report for the month of March.</para>

          <para>Select the cash flow report from <menuchoice><guimenu>Reports</guimenu>
          <guisubmenu>Income &amp; Expense</guisubmenu>
          <guimenuitem>Cash Flow</guimenuitem></menuchoice>.</para>

          <screenshot id="txns-puttoget2-Cash">
            <mediaobject>
              <imageobject>
                <imagedata fileref="figures/txns_CashFlow.png" format="PNG"
                           srccredit="Bengt Thuree" />
              </imageobject>

              <textobject>
                <phrase>Cash Flow report for the month of March</phrase>
              </textobject>

              <caption><para>This image shows the Cash Flow report after <xref
              linkend="chapter_txns" />.</para></caption>
            </mediaobject>
          </screenshot>

          <para>To get this customized report, right click in the report and
          choose <guilabel>Report Options</guilabel>. Then set the time
          period, and specify which accounts you want in the report.</para>
        </listitem>

        <listitem>
          <para>Now let&rsquo;s have a look at corresponding transaction report for
          the Checking account.</para>

          <para>Select the transaction report from <menuchoice><guimenu>Reports</guimenu>
          <guimenuitem>Transaction Report</guimenuitem></menuchoice>.</para>

          <screenshot id="txns-puttoget2-TransactionRptChecking">
            <mediaobject>
              <imageobject>
                <imagedata fileref="figures/txns_TransactionRptChecking.png"
                           format="PNG" srccredit="Bengt Thuree" />
              </imageobject>

              <textobject>
                <phrase>Transaction Report for the Checking account during
                March</phrase>
              </textobject>

              <caption><para>This image shows the Transaction Report for the
              Checking account during March. </para></caption>
            </mediaobject>
          </screenshot>
        </listitem>

        <listitem>
          <para>Now let&rsquo;s change the transaction report to only show the
          various Expenses accounts.</para>

          <screenshot id="txns-puttoget2-TransactionRptExpenses">
            <mediaobject>
              <imageobject>
                <imagedata fileref="figures/txns_TransactionRptExpenses.png"
                           format="PNG" srccredit="Bengt Thuree" />
              </imageobject>

              <textobject>
                <phrase>Transaction Report for the Expenses accounts during
                March</phrase>
              </textobject>

              <caption><para>This image shows the Transaction Report for the
              various Expense accounts during March. </para></caption>
            </mediaobject>
          </screenshot>
        </listitem>
      </orderedlist>
    </sect2>
  </sect1>
</chapter>
