summaryrefslogtreecommitdiffstats
path: root/doc/en/details-schedules.docbook
blob: a5945d2c5e42dde8c73b2fbedecdbeee846b0a62 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
<?xml version="1.0" encoding="UTF-8"?>
<chapter id="details.schedules">
<chapterinfo>
  <authorgroup>
    <author>
      <firstname>Roger</firstname>
      <surname>Lum</surname>
      <affiliation>
        <address><email>rogerlum@gmail.com</email></address>
      </affiliation>
    </author>
    <author>
      <firstname>Michael</firstname>
      <othername>T.</othername>
      <surname>Edwardes</surname>
      <affiliation>
        <address><email>mte@users.sourceforge.net</email></address>
      </affiliation>
    </author>
  </authorgroup>
  <date>2009-07-21</date>
  <releaseinfo>1.0</releaseinfo>
</chapterinfo>

<title>Schedules</title>

<sect1 id="details.schedules.intro">
<title>Introduction</title>

<para>
  <quote>
    Schedules maintain information about transactions that occur one or more
    times over a specified period of time.
  </quote>
</para>

<para>
  Sometimes called a recurring transaction, a schedule provides a means to
  record information about a transaction that happen on a regular basis.  A
  common schedule is your salary.  Once a month, or maybe weekly, the company
  you work for pays you for services rendered.  This payment can happen in many
  different ways, but each month or week you will receive a payment that needs
  to be recorded.
</para>

<para>
  Because you know these payments are regularly made to you, you can create a
  Schedule to record information about the payment and even create the
  transaction for you when pay day arrives.
</para>

<para>
  Other types of schedules can also be recorded to reflect money coming in and
  out of your accounts.  Common expenses, such as utility bills or money
  transfers, can be recorded with schedules, along with loan
  repayments. Scheduling a payment can also provide a useful reminder that you
  need to make a payment.
</para>

<para>
  A schedule consists of two main parts: the scheduling data and the transaction
  data.  The scheduling data records the occurrence of the schedule, i.e., when
  the transaction is to be entered into the ledger and how.  The transaction
  data records the normal details about the transaction, and will be entered in
  to the ledger as-is.
</para>
</sect1>

<sect1 id="details.schedules.type">
<title>Types of schedules</title>

<para>
  There are four different types of schedules in the current version of
  &kappname;:
</para>

<itemizedlist>
  <listitem><para>Bills</para></listitem>
  <listitem><para>Deposits</para></listitem>
  <listitem><para>Loans</para></listitem>
  <listitem><para>Transfers</para></listitem>
</itemizedlist>

<sect2>
<title>Bills</title>

<para>
  A Bill Schedule is used for money going out of your account, such as a Gym
  membership or a utility bill.
</para>
</sect2>

<sect2>
<title>Deposits</title>

<para>
  A Deposit Schedule is for money coming into your account, such as a pay check.
</para>
</sect2>

<sect2>
<title>Loans</title>

<para>	
  A Loan Schedule is a special type of schedule and is created when dealing with
  <link linkend="details.loans">Loan</link> accounts.
</para>
</sect2>

<sect2>
<title>Transfers</title>

<para>
  A Transfer Schedule is used for money coming out of one account and going into
  another, such as making a credit card payment from your checking account.
</para>
</sect2>

</sect1>

<sect1 id="details.schedules.view">
<title>The schedule view</title>

<para>
  Open the schedule view by clicking on the <guiicon>Schedule
  <inlinemediaobject><imageobject><imagedata
  fileref="schedule_view.png"/></imageobject></inlinemediaobject></guiicon> icon in
  the view selector.
</para>

<para>
	<screenshot>
	<mediaobject>
	<imageobject>
	<imagedata fileref="scheduleview.png" format="PNG" />
	</imageobject>
	<textobject>
	<phrase>Schedule View</phrase>
	</textobject>
	</mediaobject>
	</screenshot>
</para>
	
<para>
  The schedule view consists of a view area with two tabs along with a
  <guibutton>New Schedule</guibutton> button above it.  The first tab
  <guibutton>List View</guibutton> shows all schedules, grouped by type.  The
  second tab <guibutton>Calendar View</guibutton> is described in its own
  section below.
</para>
	
<para>
  To create a new schedule click on the button. For Bill, Deposit, and Transfer
  schedules, &kappname; will display the new schedule dialog. Loan schedules are
  handled differently, and are described in the section on Loans.
</para>
</sect1>

<sect1 id="details.schedules.new">
<title>The new schedule dialog</title>
<para>
	<screenshot>
	<mediaobject>
	<imageobject>
	<imagedata fileref="newsched_numbered.png" format="PNG" />
	</imageobject>
	<textobject>
	<phrase>New Schedule</phrase>
	</textobject>
	</mediaobject>
	</screenshot>
</para>
	
<para>
  A new dialog window is now shown, prompting for the schedule and transaction
  data.  The requested data includes the following:
</para>

<orderedlist numeration="upperalpha">
  <listitem><para>Schedule Name</para></listitem>
  <listitem><para>Next due date</para></listitem>
  <listitem><para>Frequency</para></listitem>
  <listitem><para>Payment method</para></listitem>
  <listitem><para>Amount</para></listitem>
  <listitem><para>Other transaction details</para></listitem>
  <listitem><para>Schedule options</para></listitem>
</orderedlist>

<sect2>
<title>Filling in the fields</title>

<para>
  Enter the name and the date of the next occurrence of this schedule into their
  respective fields.  The name is how the schedule will be shown in the list
  view.  Specify how often the schedule should occur, using the Frequency field
  and drop down list. For example "every 6 weeks" or "every 3 months".  If the
  amount varies transaction to transaction make sure to check the
  <guilabel>Estimate</guilabel> check box and you will be prompted for the
  correct amount when it is entered into the ledger.  Fill in all the
  transaction fields as you would normally with the ledger view.
</para>
</sect2>

<sect2>
<title>Modifying the schedule behavior</title>
<para>
  At the bottom of the dialog are some optional fields that can modify how the
  schedule behaves.  If the schedule occurs on a weekend you can choose whether
  to enter the transaction on the weekend day, the previous Friday, or the next
  Monday.  Typically this option is used to replicate some real world operation
  such as a bank transaction.
</para>
</sect2>

<sect2>
<title>Letting &kappname; enter the transaction into the register</title>

<para>
  To let &kappname; automatically enter the transaction for you when needed,
  make sure that the check box labeled <guilabel>Enter this schedule into the
  ledger automatically when it is due</guilabel> is checked.  Otherwise, when
  the transaction is due to be entered, &kappname; will open a dialog box asking
  you to confirm that you want it to be entered.  This behavior is configurable,
  and more information can be found in the Settings section.
</para>
</sect2>

<sect2>
<title>Letting &kappname; know when the schedule will finish</title>

<para>
  If you know how many transactions are left or when they are due to finish,
  this information can be entered so the transactions are not entered
  indefinitely.  Check the appropriate check box and enter the appropriate
  information.  Only the date or the number of transactions remaining is needed
  because the other can be calculated.
</para>

<para>
  When you have entered all the necessary information click on
  <guibutton>OK</guibutton> to continue.
</para>
</sect2>

</sect1>

<sect1 id="details.schedules.edit">
<title>Editing schedules</title>

<para>
  To edit a schedule simply select the entry in the list and right click to
  bring up the context menu and select <guimenuitem>Edit</guimenuitem>.  This
  will bring up a dialog similar to the New Schedule dialog, where you can alter
  the necessary data.
</para>
</sect1>

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

<para>
  To delete a schedule simply select the entry in the list and right click to
  bring up the context menu and select <guimenuitem>Delete</guimenuitem>.
</para>
</sect1>

<sect1 id="details.schedules.calendar">
<title>The calendar view</title>

<para>
  The calendar tab presents the schedules in a calendar format so it is easier
  to see when they occur.  To switch to the calendar view click on the
  <guibutton>Calendar View</guibutton> tab.
</para>

<para>
	<screenshot>
	<mediaobject>
	<imageobject>
	<imagedata fileref="calendarview.png" format="PNG" />
	</imageobject>
	<textobject>
	<phrase>Calendar View</phrase>
	</textobject>
	</mediaobject>
	</screenshot>
</para>
	
<para>
  The calendar type can be changed using the <guibutton>Select Style</guibutton>
  button.  Currently only two types exist: Week and Month.  The monthly view is
  the default, and is usually the most useful.  Navigate through the dates using
  the controls as you would with the date input control.
</para>

<para>
  On any day with scheduled transactions, the number of transactions scheduled
  for that day is displayed on the calendar.
</para>

<para>
	<screenshot>
	<mediaobject>
	<imageobject>
	<imagedata fileref="schedmonthday.png" format="PNG" />
	</imageobject>
	</mediaobject>
	</screenshot>
</para>

<para>
  To view the schedule(s) that fall on that day, move the mouse cursor over the
  highlight and a popup window will be displayed allowing you to view the
  schedule summary.
</para>

<para>
	<screenshot>
	<mediaobject>
	<imageobject>
	<imagedata fileref="schedpopup.png" format="PNG" />
	</imageobject>
	</mediaobject>
	</screenshot>
</para>

<para>
  If more than one schedule falls on that day you can cycle through them using
  the arrow buttons in the upper corners of the popup window.
</para>

<para>
  If you find that the display is cluttered with schedules and you only want to
  view one type of schedule, then this is possible from the <guibutton>Select
  Schedules</guibutton> dropdown.  After clicking on this button the different
  schedule types are listed and are checked by default
</para>

<para>
	<screenshot>
	<mediaobject>
	<imageobject>
	<imagedata fileref="schedcaltypes.png" format="PNG" />
	</imageobject>
	</mediaobject>
	</screenshot>
</para>

<para>
  To remove a type from the calendar view simply uncheck it in the list.
</para>

</sect1>

<sect1 id="details.schedules.entering">
<title>Entering scheduled transactions</title>

<para>
  Entering a scheduled transaction means actually entering a transaction into
  the appropriate ledger, using the details specified in the schedule.
  Scheduled transactions can be entered in one of four different ways:
</para>

<itemizedlist>
  <listitem><para>Manually by right clicking on the list entry</para></listitem>
  <listitem><para>Manually via the popup window in the calendar view</para></listitem>
  <listitem>
    <para>
      &kappname; can enter them with or without your interaction upon startup
    </para>
  </listitem>
  <listitem>
    <para>
      &kappname; can enter them with your interaction during online banking or
      import of an electronic bank statement
    </para>
  </listitem>
</itemizedlist>

<sect2>
<title>Manually entering scheduled transactions</title>

<para>	
  You can enter a scheduled transaction manually by right clicking on the list
  entry and selecting <guimenuitem>Enter</guimenuitem> from the popup menu or by
  clicking on the <guibutton>Enter</guibutton> button on the popup window in the
  calendar view.
</para>
</sect2>

<sect2>
<title>Confirming the transaction to enter</title>

<para>
  After selecting either method the Enter Scheduled Transaction dialog window is
  shown prompting you with the required information that was entered when you
  created the schedule.
</para>

<para>
	<screenshot>
	<mediaobject>
	<imageobject>
	<imagedata fileref="enterschedule.png" format="PNG" />
	</imageobject>
	</mediaobject>
	</screenshot>
</para>

<para>		
  This information can be changed, and the changes can be applied to just this
  one instance of the schedule or to all subsequent transactions.  After
  checking that all the data is correct clicking on <guibutton>OK</guibutton>
  will add the transaction to the ledger and update the next due date of the
  schedule to the next occurence.  If you have changed any of the transaction
  data a further confirmation of what you changed will be displayed, giving you
  a final chance to accept or reject the changes.
</para>

<para>
	<screenshot>
	<mediaobject>
	<imageobject>
	<imagedata fileref="confirmenter.png" format="PNG" />
	</imageobject>
	</mediaobject>
	</screenshot>
</para>

<para>	
  Select what you want to do with the information presented and click
  <guibutton>OK</guibutton> or <guibutton>Cancel</guibutton>.
</para>
</sect2>

<sect2>
<title>Letting &kappname; enter the scheduled transaction(s) for you</title>

<para>	
  Alternatively, &kappname; can check which schedules are due upon startup and
  enter them for you if the appropriate option was checked when setting up the
  schedule.
</para>

<para>
  If the option was not checked then &kappname; will open the previously
  mentioned dialog and you can follow the steps mentioned there.  &kappname;
  will also open the dialog if the amount is an estimate so you can enter the
  real amount.
</para>

<para>
  You can also opt to have &kappname; not check which transactions are scheduled
  on startup by deselecting the option in the Settings dialog and any overdue
  transaction or transactions due 'today' will be shown in the Home view for you
  to enter manually.
</para>
</sect2>
</sect1>
</chapter>