DATEBK3, V-2.1 - Simply, the BEST Datebook


Introduction

Datebk3 is a very sophisticated and complete replacement for the built-in Datebook and Todo applications in all models of the Palm Pilot. Before using Datebk3 you should be familiar with the built-in Datebook and Todo applications as this manual only covers those aspects of Datebk3 that differ from those applications. If you are an existing Datebk3 user, note that the features new in V-2.0 are flagged with a red comment in the list of items that follow...

Datebk3 offers many substantial improvements, such as the ability to display and manipulate todo's from the todo database, two new weekly views with text, a monthly view with graphical icons and a surprisingly useful yearly view. Datebk3 also has its own flavor of integrated todo's (Floating Events) which can be scheduled like appointments, have alarms and be set up to repeat. Datebk3 supports categories and includes a raft of enhancements, such as the ability to schedule events to the nearest minute, schedule end times by duration, and insert appointments from templates that preset any event attributes to a specific value. Best of all, Datebk3 runs on ALL models of the PalmPilot without modification, while still supporting all the functionality available on each platform (the only exception is IR beaming on the Palm III which is already supported by the built-in Datebook application).

Datebk3 also includes fixes for all known bugs in the built-in Datebook application (although these bugs are of a minor nature and generally involve end conditions that are not likely to occur). For example, one annoying problem on repeat appointments in Datebook - you cannot set the end date of a repeat event to a date earlier than the particular occurrence that you called up - has been corrected in Datebk3. Another error involves the incorrect display of the start blip on a daily repeat event in the monthly view that started in the preceding month.

Datebk3 uses the standard datebook and todo databases - the same ones that the built-in datebook and todo applications use, so you can freely move back and forth if you wish. Remember, however, that if you edit a Datebk3 floating or checked off event and modify the tag in the note field, that event may revert to a normal appointment-style event. Note that this guarantees that all applications designed to communicate with or HotSync with the Datebook or Todo databases will be compatible with Datebk3.

Datebk3 is a very large application (180k) and it is important that you make sure there is sufficient room on your PalmPilot to load the application. This is particularly true if you have the older V-1 or V-2 PalmPilots as there was a design flaw in the OS on those devices that caused memory fragmentation - even though there appeared to be enough memory, it may not have been contiguous and so Datebk3 might not load properly. The HotSync application is fragile and can easily tip over while loading large applications. If you encounter problems loading, see the section Download Problems for assistance on dealing with them. Most likely you will need to run a defragger prior to loading Datebk3. Do not get disillusioned if you have difficulty loading this application as some of these difficulties are quite easy to address.

Before emailing Pimlico Software regarding problems, questions, or suggestions for improvement, please read the Datebk3 FAQ's page on our website, or read the   Planned Enhancements section first as your problem or suggestion may already have been anticipated.

Note for existing Datebk3 users: now that V-2.1 has comprehensive support for Todo's from the todo database, many users have been confused between the Datebk3 "Todo's" and the Todo database "Todo's". To lessen this confusion, we are returning to using the name "floating events" for what was formerly referred to as the datebk3 todo's.

Make sure that there are no copies of WeekView or WeekVu3 left around on your PalmPilot as they will conflict with Datebk3! Delete those programs BEFORE downloading Datebk3!

Datebk3 is shareware and has a 45 day evaluation period. All functionality is available during that period without restriction. At the termination of that 45-day period, a few of the Datebk3 enhancements are suspended on the last half of each month. Those users with very little memory may wish to forgo the Datebk3 enhancements and just  run the standalone version of WeekView by itself.

Making Datebk3 your default Datebook. The easiest way to do this (V-2 and V-3 PalmPilots) is to go to the Prefs application in the system screen. Tap on the drop-down list at the top right, select Buttons. Tap the popup list for the Datebook button and select Datebk3. On a V-1 PalmPilot, you may want to look at AppHack which will allow you to do the same thing (AppHack is also very useful on V-2 and V-3 PalmPilots).

Note on Find Function: when you do a Find function, Datebook (since it is in ROM and cannot be removed) will also search the database, but if you have Datebk3 open, Datebk3 will always search it first.


Some Quick Tips (for Datebook AND Datebk3)

How do you schedule events like Father's Day? We often get asked this question. The trick is to set up the event as a monthly event, but one that only repeats every 12 months. This way, you can use the monthly repeat features to set Father's day as the 3rd Sunday of every 12th month starting in June.

How can I skip weekends on a daily event? Easy - just mark it as a weekly event and then select the days of the week you want it to repeat on, so marking it for Mo/Tu/We/Th/Fr would skip the traditional Sa/Su weekends.

Entering the time for an event. An undocumented feature of the V-2 and V-3 Datebook applications (which of course is also in Datebk3 so it now works also on V-1 PalmPilots too) is that you can use graffiti strokes to quickly enter a time for a new event, provided that no event is currently selected. The program is smart enough to think about what you are typing to make the best guess, so on a 12-hour clock, a '1' is first interpreted as 1pm, but if you type another '1' that is treated as 11am. If you type a '13' (on a 12hr clock), that must be 1:30p etc. Many users find this by far the most efficient way to enter a new timed event. Stroke a backspace to remove the digits you have already typed in order to start over again.

Entering an untimed event. Just start graffiti'ng or tapping characters on the built-in keyboard. If nothing is selected in the day view, typing a character immediately starts an untimed event. If it starts with a digit, just stroke a space (left-to-right) and then a backspace (right-to-left) to avoid the digit being treated as the start of a time (see above) and proceed.

What time is it? Just tap the title bar in any view and the time will be displayed briefly for about two seconds. This does not work on V-1 PalmPilots in Datebook and only works in the 2nd weekly view in Datebk3 on a V-1 PalmPilot.

Changing the time quickly on an event. Tap the time in the leftmost time column for an event and it will go straight to the time picker dialog - faster than going into the details dialog and then tapping the time.

Selecting overlapping objects in graphical weekly view. If two events overlap, tap the portion of the event that does not overlap in order to select it. If they start and end at the same time, you are out of luck in Datebook, but in Datebk3, a next button appears which will cycle through all events scheduled at that same time.

How can I hide some repeating daily events but show others?. The option to hide repeating daily events in the monthly view only applies to events that are marked for a daily repeat. You can make a virtually identical repeat by selecting the weekly repeat and then marking every day in that week as a repeat day. This latter repeat will repeat every day but will display even though repeat daily events are hidden. Note, however, that since it is techically a weekly repeat, it will not show the row of dots at the bottom of each day the repeat occurs.


The Enhancements...


Weekly View with Text

The new weekly view offers an alternative to the graphical weekview of the built-in Datebook application. Rather than showing appointments graphically, the text of each appointment is shown in a conventional "day-timer" type format. Note that the week follows the European standard of starting the week on Monday (even if the system preference setting is set at Sunday) because it yields a more efficient usage of the available space. If only one event is present on a day, the full text of the event is wordwrapped into multiple lines, otherwise as much text as will show on each line is displayed for each event. Todos' from the todo database can also be displayed in this view and are recognizable because the priority is displayed in a broken box at the start of the line. Todo's can be sorted ahead of or after appointments (see preference settings).

The weekly view is also available in a standalone program called WeekView. The cell containing today's date is always flashed gently on and off in the display, so you can easily identify today's date. If you find the blinking disturbing just tap the graffiti area twice (as if entering the period character) and the blinking will stop. When you next display a screen with today's date, a frame will be drawn around the date instead of inverting it. This setting is permanently remembered. Tap the screen again twice to re-enable the blinking on the next screen refresh.

Navigating and Features of this View

To move forwards and backwards, use the UP and DOWN buttons on the PalmPilot or click on the Left or Right arrows in the title line. When displaying two weeks at a time, the buttons will move two weeks in either direction, but the arrows will only move one week (that way you can display two weeks starting with any week).

To jump quickly to a specific date, click on the GO button on the title bar and the standard PalmPilot Date Picker dialog will
appear.

To jump quickly to a specific week, select the Week Number item in the Go menu (or stroke Command/W in the graffiti area) and then press the button corresponding to the week you want to go to. In the Week Number dialog, the current week number is in bold, and the currently displayed week has a bold border around it. Note that there is a preference option to adjust the starting week of the year to match fiscal or non-ISO standard week numbers.

To jump to today's date, just tap the third view button (this is true in all views - if you tap the button corresponding to the current view it goes to today's date).

To jump to a day in the day view, click on the inverted date in that day cell (i.e. that has the day of week and day of month displayed in white on black). There is a preference option that allows you to click anywhere in the day cell to go to the day view (instead of going to the weekly view's own details dialog).

To jump forwards or backwards by a number of days, select the GO FWDS/BKWDS BY DAY option in the OPTIONS menu. A dialog appears where you can type in a number of days (use a minus sign to go backwards). For example, you can easily move to a week that is 125 days before the current week by typing in -125.

To switch between the 1 week and 2 week view, tap the button in the middle of the title bar and the legend will toggle between a 1 and a 2.

Text Wordwrapping. If there is only one appointment on the day, there is a preference option to wordwrap the text to the cell to show as much text as possible (normally this preference is checked). If there are too many appointments to display in the cell, the last appointment will end with a round bullet as a signal that there are more appointments (see Scroll button below)

Scrolling to More Appointments. If there are some appointments in one or more days that are not being shown, there will be a down arrow in the box just to the left of the GO button. Tap that button to scroll forwards to the next set of events on those day(s). If there are events before AND after those being shown, there will be both an up and a down arrow in the display. When the last set of events is being shown, there will be only an up-arrow in the scroll box. If you tap the scroll box again, it will cycle back to the beginning. If there is no arrow in the scroll box, that shows that all events in the period being shown are being displayed. Note that each cell is scrolled individually, so on each tap, all the appointments that are displayed are new.

To view all the appointments for a day (up to 16), just click anywhere on the cell for that day to bring up the DETAILS view. Note that this view is really more useful in the standalone version of the program - you may wish to set the preference option to go straight to the Day View if you tap anywhere in the cell.

Tapping on the Title Line. In the Weekly view, the title line shows the month and year of the week being displayed followed by the week number. Tap on the title bar to briefly see the time and also an indication of the +- offset in weeks from the current week in parentheses after the time). Note that this feature (also in the built-in Datebook application) may interfere with a hack like MenuHack. This feature also works on V-1 PalmPilots (although this is the only view which works that way on V-1 PalmPilots).

To specifically hide an appointment or floating appointment in the 2nd weekly view, put the text string ~HIDE~ anywhere in the note field for the appointment. It will then not be displayed. This can be done to supress repeating appointments too.

Weekly View's Details View

This view is displayed when you tap anywhere in a day cell in the main weekly view (unless the preference setting to go to the day view instead is checked). Note that you may well want to have that preference setting checked.

To return to the WEEKLY view, just click below the last appointment line or the Done button. In the one case where there
are 16 or more appointments you will have to click on the Done button.

If the current item has a note, the note symbol will appear at the end of the line. You can tap the note symbol to bring up the note in a read-only window which will display up to 16 lines of the note. Just tap anywhere on the screen below the title line to return to the details view, or tap the EDIT button to jump to the day view with that note displayed so you can modify the note. Repeat items are flagged with the standard Repeat symbol (V-2 PalmPilots) or a diamond (V-1 Pilots) after the time.

To jump to a specific appointment in the Day View (where you can edit, make changes, etc.), tap on the appointment.

To create a new entry, tap the NEW button which will switch to the Datebook application and put the cursor in the first time slot for the day.

Weekly View Preference Settings

To change the appearance or settings in this view, select the Preferences item in the Options menu or stroke Command/P in the graffiti area. In the preference dialog you can change the following Items:

Time Format. The drop down list box allows you to omit the time or display the time in 12 or 24 hour formats with/without the
minutes. This refers to the time that is normally displayed in the left margin in the main view.

Wordwrap. If checked, a single entry will be wordwrapped to multiple lines. Normally, you would want this preference option checked.

Wordwrap All in Details. If checked, all entries in the Details dialog will be wordwrapped. This is probably the preferred setting unless you often have a very large number of appointments in each day. Since this version does not yet have scrolling, you will, however, not want to check this option if you have a lot of events to display on each day.

Condensed Font. If checked, a condensed font is used which will display more text but with a corresponding loss of legibility. At some point in the future, this may be replaced with a "better" small font.

Show End Time. If checked, the ending time of each appointment will be displayed in the Details view.

Hide Untimed Floating Events. If checked, untimed floating events or done items will be hidden from the display. Timed floating events, or done items will be displayed as usual.

Tap anywhere -> DayView. If checked, a tap anywhere in the day cell will take you directly to that day in the Daily View. This option will probably be checked by most users, but has been left unchecked by default to maintain compatibility with prior versions (and prior WeekView users who expect it to work that way).

Display uses non-Roman Chars. You will definitely need to check this item if you are displaying Kanji or Hebrew characters on your Palm Pilot. There is a special hack in fairly wide use in Japan to display Kanji characters and without this option, they will not display properly on the PalmPilot as certain optimizations for displaying accented characters in Roman Fonts are not compatible with the display of Kanji characters. There is a similar hack available for displaying Hebrew. All of these hacks depend upon the application program outputting full character strings and you must check this option to ensure that these hacks see the entire string displayed at once. If you enable this for Roman character sets, you may see the top pixel row of certain characters clipped off (such as accents etc.)

Todo's: Before | After | Hide. This option allows you to place Todo's before regular appointments or after them. For those users who want to primarily look at their schedule in the 2nd weekly view, the after option will be preferred. The before option was the only option in prior versions. The Hide option will hide all todo's in the 2nd weekly view without affecting the display of todo's in the daily view (which can be controlled through the Todo Preferences dialog).

Pilot Week# | Custom Wk#. Normally, Datebk3 will display week numbers which match the numbers used in the PalmPilot's Datebook application. However, if you click on CUSTOM WK#, a date picker dialog appears where you can set any week of the year to be week 1. All Week numbers will then be calculated from that starting week number.


Monthly View with Icons

This view is invoked by tapping on the Icon pushbutton in the monthly view. Rather than displaying spots to show where appointments occur during the day, it displays graphical icons associated with each appointment. Note that nothing will display until you actually assign icons to events in the Daily View. Also, you must set up a record in the Memo application that contains the bitmaps for all the icons. The adventurous user can even design and incorporate their own custom icons.

Up to three icons can be displayed in each day cell. As in the standard monthly view, you can tap on any cell in the calendar to go directly to that day in the Day View.

Setting up the Icon Bitmaps in the Memo Application

A sample set of icons has been included in the Datebk3.zip file in a file called Bitmaps.txt. To install these on your PalmPilot so they can be used by Datebk3, follow this procedure:

  1. Unzip the Bitmaps.txt from the Zip archive and place it in a directory
  2. Run the PalmPilot Desktop application, select Memo and click on New to open up a new memo
  3. Open up the Bitmaps.txt file with Notepad or similar, simple editor
  4. Select all the text in the file and copy to the clipboard
  5. Switch to the Pilot Desktop, put the cursor in the memo area and paste the contents of the file into a new memo
  6. Close out the desktop and do a HotSync
  7. Verify that you now have a new memo on your Pilot with just DATEBK3 on the top line and all the bitmap records underneath it.

Make absolutely sure that the file is not touched in any way while transferring it to your Pilot (especially if you are using some other program to HotSync with). This is a common problem on MAC platforms, so watch that carefully. If necessary, just call up the record on your PalmPilot and fix any wordwrap problems that you may have inadvertently caused while transferring the contents of the file.

Attaching Icons to Events

To attach an icon to an event, tap on the event in the Day View and select the Attach Icon item in the Record menu. A dialog appears that displays the graphical icons along with their description. If this dialog does not appear when you tap on the menu command, this is a clear indication that the icon bitmaps have not been properly installed in the Memo database (see above). You should also see a dialog telling you to install the icons. If they are installed, but not correctly, you should see an error message indicating what icon the program was looking for that it did not find. If there is no description for an icon, you will see the graphic accompanied by the legend: icon a where 'a' is a letter from a-z that corresponds to that icon.

There are two pages of icons (1-26 with a-z, and 27-52 with A-Z) which you can select by tapping the PushButtons at the bottom of the screen. Note that the second page of icons is a new addition, so if you are using the Shuji Fukumoto's Datebk3 Icon Editor, be sure to download the new version that supports the second page of icons as the old version would remove the second page.

The Attach Icon command inserts the two character sequence #a (where 'a' is the letter that corresponds to the icon) in the note field for the current appointment (creating a note if necessary). If there is already an icon flagged in the note field, this command will update the icon letter (rather than duplicating it). Note that the Attach Icon command is really just a nice shorthand for inserting the #x sequence into the note field. Also, this sequence can be placed in the description field of an appointment too. Be careful not to delete that sequence when you edit the note. Also, if you delete the note, it will also remove the icon attached to the appointment.

Icons can be attached to templates. This is very handy as you can create a birthday template which includes the icon for a birthday cake and that will be attached whenever you create a birthday event using that template.

Technical Details on Creating your Own Custom Icons

Special Note: This feature is intended for the more adventurous user, so if  you are a novice computer user, don't be surprised if this looks a bit daunting. However, the instructions are straightforward, and even if you mess things up, it should not cause a problem on your PalmPilot.

New Update: A third party developer has released an icon editor for the Datebk3 icons that runs on the PalmPilot. There is also an interactive icon editor written in Java on another website and another user has created an Excel macro for generating the hexadecimal strings. Consult the Pimlico WebPage FAQ's for further information. Also, there are several websites that have collections of Datebk3 icons that you can use.

Format of the Datebk3 Memo Record

The graphics for the monthly icons are stored in a memo record that must begin with the text DATEBK3{eol} in capitals, where {eol} represents the End of line character. The ZIP archive contains a memo record with some suggested graphics.

This is then followed by 26 lines of Hexadecimal codes that describe the icon, one icon per line. The first line sets the icon for #a, the second for #b etc. Each line has the format:

#a{Description}={hexadecimal string}
#b{Description}={hexadecimal string}
#c{Description}=0000000000000000
#d{Description}={hexadecimal string}
...

No letters may be skipped, but you can have a line that has no icon as shown for #c above. Use caution editing this memo record. Obviously, if the format is corrupted, the icon display will not be available and an error alert will be displayed. The {Description}field has a 1-24 character description of the icon which is terminated by the equals sign. If the {Description} field is omitted, the legend 'Icon x' will be displayed instead (where 'x' is the associated character for the icon).

The hexadecimal string consists of 16 hexadecimal characters. These define the 8x8 bitmap graphic with the first hex character specifying the left nibble for row 1, then the right nibble for row 1, then the left nibble for line 2, right nibble for line 2, as shown below:

        01
        23
        45
        67
        89
        AB
        CD
        EF

For example, an small airplane could be described as: 18183C7EDB183C5A which would correspond to the following bitmap:

        ...xx...    18
        ...xx...    18
        ..xxxx..    3c
        .xxxxxx.    7e
        xx.xx.xx    db
        ...xx...    18
        ..xxxx..    3c
        .x.xx.x.    5a

Valentine Heart

        .xx..xx.    66
        x..xx..x    99
        x......x    81
        x......x    81
        x......x    81
        .x....x.    42
        ..x..x..    24
        ...xx...    18

For the hexadecimal characters, remember that:

        Bits        #
        ....        0
        ...x        1
        ..x.        2
        ..xx        3
        .x..        4
        .x.x        5
        .xx.        6
        .xxx        7
        x...        8
        x..x        9
        x.x.        A
        x.xx        B
        xx..        C
        xx.x        D
        xxx.        E
        xxxx        F

The sample memo record supplied in the file BITMAP.TXT contains these
graphics:

#a - airplane
#b - boat
#c - car
#d - Dollar sign (payday / pay bills)
#e - exclamation mark
#f - Flag
#g - big bullet
#h - happy face
#i - Racquet (Tennis/games)
#j - Birthday Cake
#k - knife and fork
#l - bomb (Deadline)
#m - man
#n - no symbol
#o - unhappy face
#p - phone
#q - question mark
#r - checkmark
#s - Star
#t - Tack (reminder)
#u - Checkbox
#v - Valentine's Heart
#w - Drink
#x - Big X
#y - Big Y
#z - Arrow


Yearly View

The yearly view displays an entire year all at once. Obviously with the rather small screen of the Pilot, there are limitations to the utility of this view, but with a bit of a care and careful application of the preference items in this view, it can be remarkably useful. When first displayed, today's date will be flashing on and off in the calendar, and the current month's name is displayed in bold. Significant items will cause a dot to be displayed in that day. There are many different options to determine exactly what constitutes a "significant" item (see description below in preference settings).

To select a day, tap on the day in the calendar. The day you select will gently flash on and off so you can determine whether or not you tapped on the correct day. In the title of the window, just after the year, the day of the month is displayed along with the text of the first event that caused a dot to be displayed. Separating the day of the month from the description will be a minus (-) sign if there was just one significant event on that day, or a plus (+) sign if there were two or more significant events on that day (only the text of the first event is displayed on the title bar).

The left and right arrows in the bottom right corner of the screen will move forwards and backwards by one day through the entire calendar (including across years). These buttons repeat, so you can hold them down to move the day quickly (and scan the appointments which flash across the title line). The Up and Down buttons serve the same function. Many touchscreens have noise, so don't be surprised when you tap on a day that another day gets selected. You can hold the pen down and drag it around on the screen and Datebk3 will show you which date it thinks is selected based upon the data from the touchscreen. You might also want to recalibrate your touchscreen (digitizer) from time to time (Select Digitizer in the Prefs application).

When a day is selected, you can tap on any of the four other view buttons to jump directly to that view with the day in the yearly view displayed in that new view. Tap on the last of the five pushbuttons (Yearly View) to select today's date.

To move to a different year, tap on the left (previous year) or right (next year) arrows at the right end of the title bar.

Filtering Significant Events in the Yearly View

To filter events in the yearly view, tap on the Show button at the bottom of the screen. A preference dialog appears with these options:

Hide Float and Done Events. Floating events and done items will be hidden if this item is checked (this is set by default). This does not refer to todo's from the todo database which are never displayed in the yearly view.

Hide Untimed Events. If checked, events which have no time assigned to them will be hidden. This will not cause floating events or Done items to be hidden (use the previous option to handle those).

Hide Zero Duration Events. If checked, events which are timed, but which have no duration (i.e. the start time is the same as the end time) will be hidden.

Hide Events < nnn Hr. This item has a popup list to select a cutoff threshold for events whose duration is less than 0.5, 1, 2, 4, 8, or 12 hours. Select the desired cutoff in the list and then tap the checkbox to set this option. The current selection is displayed. Events whose duration is 1 minute or more (i.e. not zero duration events) but less than the specified threshold will be hidden.

Hide Daily Repeating Events. If checked, daily repeating events (which have a frequency of 1 - i.e. every day) will be hidden.

Hide Events with no Icons. If checked, only events that have icons attached to them will be displayed. This is a very useful option as icons are usually only attached to significant events (such as holidays, business trips, birthdays, anniversaries, etc.).

Only Show Events with this Icon. If checked, an icon selector appears and the currently selected icon will be displayed to the left of the icon selector. To select a different icon, tap on the selector and select the icon from the list that appears. Only events that have that specific icon will be displayed. In the Yearly view, the selected icon will be displayed to the left of the Show button in a graphic button. You can tap on this button to bring up the icon selector directly to select a different icon to view.


Floating Events ("Integrated Todo's")

Floating events are a hybrid -  in one way they are similar to todo's from the todo database since they float forward day-by-day like an undated todo, until they are checked off. On the other hand, they are like events in that they can be timed, have alarms and can repeat. These events were referred to as "integrated todo's" in prior versions of Datebk3, but are now designated as "floating events" in order to avoid confusion with todo's from the todo database.

A floating event can be created in two different ways. First, an existing, normal event can be marked as a floating event by going into the details dialog and tapping on the Float pushbutton at the bottom of the dialog. If the event had a date earlier than today, it will automatically be forwarded to today (since an incomplete floating event can never be displayed on a date earlier than today). Second, there is a menu option, new floating event, that creates an untimed floating event. Note that there is a preference option to make the New button create a new floating event rather than a normal event.

Floating events always display an open circle in the time column (if untimed) and in the right margin for untimed events (exception: Palm V-1. devices cannot display a circle for timed events). A floating event can be marked as done by simply tapping the circle (like tapping a box in the todo application). Note that floating events display a circle rather than a box and do not have a priority number and can therefore be easily distinguished from todo's coming from the todo database.

Datebk3 sorts all three kinds of events in order: todo's from the todo database in priority order (with incomplete items preceding checked-off items) are followed by floating events (again with incomplete items first and done items last, sorted in alphabetic order) followed finally by regular untimed events, also sorted in alphabetic order.

Each day, Datebk3 checks to see if there are any floating events in the database. If there are, you will see the legend scanning... appear briefly in the top left of the screen as Datebk3 advances the date of all incomplete floating events and checks for any repeat floating events. When a floating event is marked as done, it will stay on that date and will not be advanced. This scan only occurs if there are one or more floating events in your datebook database.

Note that there are options in the daily, 2nd weekly views and yearly views to determine whether or not floating events should be displayed. The Todo Preferences item in the Options menu of the daily view refers specifically to the todo's from the todo database and not the floating events. Whether or not floating events that are marked as done are displayed is handled by a checkbox in the More Preferences item in the Options menu of the daily view (so they can be controlled independently).

The default alarm preset does not apply to floating events, as floating events by default are never assigned a preset alarm - you have to go into the details dialog and explicitly set an alarm for a floating event.

Floating events have a special flag which is stored "invisibly" in the note field of the record. Normally, you would never see this special flag using Datebk3, but if you examine the event in a desktop application, or in the normal Datebook application, you will see a three-character sequence: #~f  for a floating event, and #~c for a done event. You should be careful to leave these alone if you edit the note field of one of these events in an application other than Datebk3. If it is really important to enter an floating event in the desktop application, you can use this knowledge to do it - just put #~f in the note field, and the event will be marked as a floating event after you HotSync, or #~c to mark it as a done item (but that's not really intended to be a "feature").

Note on rescheduling of Floating event. Floating events can be rescheduled either when you run Datebk3, or can be triggered automatically at a preset time (usually in the very early, morning hours). The advantage of triggering the update automatically is that any alarms set on floating events will be automatically rescheduled even if the PalmPilot is never turned on. The disadvantage is that if some kind of error condition is present, the machine will not shutoff and will run the batteries down. In general, we recommend using the automatic rescheduling feature unless you are somewhere where it would be a disaster if you lost the batteries. By default, the scheduling is done when you first run Datebk3 on the day which is the safest approach.

To set automatic scheduling, select the More Preferences Item in the Options menu of the Daily View and tap on the time selector in the bottom right corner. Set the number of hours and minutes after midnight that you want the rescheduling to be performed. It's probably a good idea to schedule it for as late as possible so if there is a problem, there will be the least amount of time before you notice it (say 04:00). If you happen to be awake at that time, you will see your Pilot turn on and launch the Datebk3 application at which time the legend "scanning" will appear briefly at the top left. If left untouched, the Pilot will then automatically turn itself off after the standard "Auto-Off" time has elapsed.

To remove the automatic scheduling, tap on the Cancel button in the duration dialog, and the time selector will go back to displaying No Time indicating that this feature has been disabled.

Note: this feature is not available if you use the Power On Password feature to prevent any application from running on your pilot until you put in your password. It will also not work if you are using the built-in Datebook application to handle alarms.

Repeats on Floating Events

Repeats on floating events are somewhat different from repeats on regular, scheduled events. Each day, when Datebk3 is scanning for floating events, it checks for repeat events. If a repeat event is found that has an occurrence on today's date, a duplicate of the repeat event (except that it has no repeat status) is generated and the start date of the repeat, floating event is re-scheduled to the next occurrence of the repeat event. Note that this allows you to mark that single occurrence as done without interfering with the repeat event itself.

When would you use a repeat floating event rather than a regular repeat event? A repeat floating event would be used for anything that you have to do on a regular schedule, but which still needs to be done if not completed on that day. For example, you use a repeat event for a regular doctor's appointment because if you miss it you can't just go in the next day. But for say, giving your dog its monthly worm pill, a repeat floating event is better than an event, because if you forget it on its scheduled day, it automatically carries forward, reminding you on a daily basis until you get it done. Also, you can set an alarm which will get rescheduled each day and nag you about it until you check it off.

Another handy use for repeat floating events is to set up birthday or anniversary reminders. For each event, set up a repeat floating event that is scheduled say 10 days in advance. 10 days before the event, a floating event is created that then floats day by day up to the event until it is checked off. This repeat event can of course also include an alarm, in which case the duplicated event will inherit that alarm and nag you each day. Note that with the 24 hour snooze button, however, you may find it easier to just put a 10 day advance alarm on the event and snooze it each day until you cancel it.

If a repeat event has no further occurrences, it will be deleted (so only set an end date if you expect to have the event eventually disappear).

You cannot tap on the box in the daily view on a repeat floating event to change its status. You must call up the repeat event by tapping on the Details button so you can change the status and specify whether that change is to be made to all occurrences of the repeat event, or just a single occurrence.

Note that you would not normally want to make a repeat floating event a daily repeat as the separate occurrences created by Datebk3 will start to pile up quickly unless they are rigorously checked off each day. Also, if you start a repeat floating event for the current day, no exception will be created (they are created only at the start of each day or at the floating advance time).


Including Todo's from the Todo Database

Todo's from the Todo database can be selectively included in the Daily and second weekly views of Datebk3. To enable this feature, select the Todo Preferences option in the Options menu of the either the daily or 2nd weekly views. A dialog appears that lists all the categories in the Todo database along with a priority number to the right. The priority number specifies the priority level at, or above which, the todo will be included in the Datebk3 views. Note that 0 means that no todo's in that category will be displayed while 5 means that all todo's in that category will be displayed - 1 would mean that only priority level 1 todo's will be included. To set the priority level, just tap on the button to the right of the category name. It will toggle 1,2,3,4,5 and then back to 1 again.

Note that Datebk3 has a more powerful display of categories than the built-in todo application. The built-in application can only display all categories or a single category, while Datebk3 can display any combination of categories that you choose. Datebk3 tracks categories in the Todo database completely separately from categories in the Datebook database, so there is no need to match up categories, etc.

Tapping on the Hide All checkbox to set it will cause all categories to display 0. Tapping on the checkbox to clear it automatically sets all categories to 5 (include all). The Hide Undated checkbox if checked will hide all todo's that have no due date. If checked, all undated todo's are treated as if they are dated today and will appear in the today's display. The Hide Done checkbox if checked means that completed todo's are to be hidden. If unchecked, completed todo's are displayed. The Hide Priority checkbox removes the priority level from the display in the second weekly view (where text is very tight). The Hide Priority checkbox setting does not apply to the Day View, nor the details dialog of the 2nd weekly view.

Todo's from the todo database display a checkoff box in the left margin and are treated as untimed events that are displayed at the start of the day (sorted in order of priority). Todo's from the todo database always precede floating events and can be further distinguished because they have a priority number immediately following the checkoff box (floating events have no priority levels). To checkoff a todo (or uncheck a checked todo that is being displayed), just tap on the box and it will change its setting. The Todo database is automatically updated at this time too. On all but Version 1 PalmPilots, Datebk3 reads the preference setting from the Todo database for changing the due date to the completion date. If this was set true, then Datebk3 will update the due date to today's date and re-sort the todo into the correct position in the Todo database. On V-1 PalmPilots, the due date is always preserved. Note that checking off a todo without having this option set will cause a past-due todo to disappear from the current day's view as it will be moved back to display on its original due date.

A todo with a due date prior to today is always displayed in today's schedule, but with an exclamation mark (!) to the left of the check-off box to show that it is past due. Todo's with future due dates will be displayed in the calendar on their due date.

Advance Display of Todo's. The Todo preference dialog allows you to display future todo's in today's view. The Advance popup list at the bottom of the Todo preferences dialog allows you to specify that todo's from 0 (today only) to 9 days in advance of today are to be included in the daily view. There is also a '+' option which specifies that all future todo's are also to be displayed in the daily view. Advance Todo's (i.e. todo's for days in the future) appear after today's todo's but before any completed todo's. They are then sorted in order of their appearance, then by priority and finally alphabetically. A number from 1-9 or a '+' sign is displayed to the left of the check-off box for the todo to mark it as an advance todo. Note that advance todo's are also displayed on their actual due date.

Todo's can be edited and handled directly by Datebk3. To change the text, just tap on the text and modify it as it were a normal event. To change the priority, due date or category, select the todo and tap on the Details button and a dialog appears allowing you to make those changes (this dialog is identical to the one in the Todo application). The Attach Note and Delete Event menu commands work on todo's from the todo database as well as Datebook events. To edit a note in a todo, you can also tap on the note symbol at the end of the line (in the same way you can with a regular appointment). To change the priority of a todo, you can also tap the priority number to the right of the check-off box which will display a popup list of priorities.

Creating Todos. Creating a todo from Datebk3 raises some special issues. If you are displaying today's calendar, the todo will be made undated if your preference options are set to display undated todo's, otherwise, it will be assigned today's date. If you are displaying a future date, then the todo will be placed on that future date. If you are displaying a past date, then the todo will be treated as if you were creating it on today (i.e. it will be undated if you are displaying undated todo's, or dated to today otherwise). If you were viewing a past day in the calendar, the view will be changed to today so you can see the new todo you have created and enter the text. This probably sounds more complicated than it is - in general Datebk3 should be doing what you would expect it to do under these circumstances.

Note that if you really wanted to enter a past due todo, you can always tap on the Details button and adjust the date accordingly (after which today's schedule will appear so you can see it as a past-due todo). The New button at the bottom of the screen can be changed to insert a new Todo from the todo database (See preference setting in the More Preferences dialog).

Todo's will be created in the default category as specified in the Todo Preferences dialog (the default is Unfiled). If that category is not visible because of the preference settings, the specified category will be made visible for priority level 1 so the todo will be visible.

Changing Todos. Changing the attributes of a Todo also raises some special issues - but in most cases, Datebk3 will do what you would expect it to do. If you change the priority or category of an appointment such that it should no longer be displayed (based on your preference settings), then it will disappear from the display when you tap the Ok button in the Details dialog. If you change the date of a todo to a future date, the todo will disappear from the screen as Datebk3 will not move to that date (to facilitate advancing the days of several todo's on the current day).. If you change the date of an incomplete todo to a past date, then the date will be changed to that day, but it will still be displayed in the current day's view as a past-due item.

Changing Priority. The priority of a Todo can be conveniently changed directly from the main screen by tapping on the priority number at which point a popup list appears with numbers from 1-5 to set the new priority.

Quick Advance Buttons. As with the Details dialog for regular events, there are now buttons labelled 1 and 7 which will immediately advance the due date of the todo by 1 day or seven days. They can be tapped several times in succession (so tapping the '7' button twice would reschedule it a fortnight in advance). If the todo has no assigned date, then tapping one of these buttons treats the todo as if it was scheduled on todays's date and advances it from there..

Todo's are also displayed in the second weekly view. They can be distinguished easily because todo's begin with the priority number from 1-5 in a broken box and they are usually displayed first in the view. In the second weekly view, if you tap on the day to get to the weekly view's details dialog, you can tap on the box to check the item on or off (updating the Todo database as described earlier under the Day View). Note that there is a preference setting in the 2nd weekly view to sort todo's before regular appointments or after regular appointments. There is also an option to Hide todo's in the 2nd weekly view which will prevent them from displaying altogether, while still allowing todo's to be displayed in the daily view.

Note that checked-off todo's (if they are being displayed) are always sorted after incomplete todo's in both views.


Categories

NOTE: Although the category feature is complete, it really requires a custom conduit to be truly useful for most people. If you HotSync and the standard conduit has to update a record which is in a category other than Unfiled, it will be forced back into the Unfiled category by the HotSync application. Pimlico Software is planning on releasing a custom conduit for the Datebook database which will address this issue, allow you to sync with categories in other PIM's (such as Outlook) and also sync someone else's Datebook into a category in the Datebook database.

The Category feature allows events to be assigned to specific categories. This feature is implemented in a manner consistent with the other built-in PalmPilot applications, such as Todo, Memo and Addressbook applications. The commands below specifically refer to categories in the Datebook database and not categories in the Todo database (which are only displayed in the Todo preferences menu and the Details dialog when a Todo is selected). Category support is provided by the following items under the Cat. (Category) menu:

Select Category. When this menu option is selected, a category selection list appears in the top-right corner of the screen. Tap on the category you want to select, or tap All to select all categories, or Edit Categories to change or add a new category. This menu option is available in all five views. When selected, the current view is redrawn to reflect items in the new category.

Set Category Private. This menu option first checks that you have a single category selected (if you have all categories selected, an alert advises you to select a single category). It will then display a confirmation alert to make sure that you want to make this change. If you select OK, then every single event in that category will have its Private flag set. At the conclusion, the current view is redrawn. Note that if you have the system preference set to hide private events, everything will now disappear from the screen and it will appear blank.

Set Category Public. This menu option first checks that you have a single category selected (if you have all categories selected, an alert advises you to select a single category). It will then display a confirmation alert to make sure that you want to make this change. If you select OK, then every single event in that category will have its Private flag cleared. At the conclusion, the current view is redrawn. You can not issue this command if your security preference setting is set to hide secret records (since all secret records in that category will now be displayed).

Move Category. This menu option first checks that you have a single category selected for the source of the move (if you have all categories selected, an alert advises you to select a single category). Datebk3 then displays the standard category-picker dialog so you can pick the destination category. A confirmation dialog then appears to check that you really want to proceed with the move. Tap on the Move button to move all the items. Datebk3 then changes the default display category to the destination category and redraws the screen.

Delete Category. This menu option first checks that you have a single category selected (if you have all categories selected, an alert advises you to select a single category). It will then display a confirmation alert to make sure that you want to proceed with the deletion. If you select DELETE, then every single event in that category will be deleted. At the conclusion, the current view is redrawn with all categories selected.

Note on Invalid Categories. Some applications (like Birthday) place events into the datebook with invalid category numbers. This was not a problem with the regular datebook application because it simply ignored categories, but Datebk3 will see these invalid categories. If a category is not defined in Datebk3, the number of the category will be shown in hexadecimal as 0xAB, where A is the high order nibble of the attribute field in hexadecimal and B is the category number in hexadecimal. No harm is done, and if you subsequently define a category in that same index position, that name will be displayed instead.

Note for V-1 PalmPilots. V-1 PalmPilots lack the feature of a default, uneditable category called Unfiled. So when you edit categories, you should really first define a category called Unfiled before defining other category names.


Quick Entry Templates

A template feature makes it possible to keep a list of standard appointments or events. A picklist of these events can be brought up with a tap and directly inserted into the current day's schedule.

Creating a Template

To create a template, select an event and invoke the Save as Template item in the Record menu to save the appointment as a template. A copy of the event is made and stored in the database as an appointment on January 1, 2020 (intentionally put far out of the way). This event can be easily modified by tapping the Edit button in the template dialog (which is invoked by tapping the Tp button on the bottom of the screen in the Day View). This goes to January 1, 2020 where all the template events are stored. Just modify the event as if it was a normal event.

Using a Template

To insert a template, tap on the Tp button in the Day View. Select an appointment from the dialog that appears and tap one of the following three buttons:

If no time was selected when the Tp button was tapped, the template appointment will be inserted at the same time that the template has assigned. If you tap on a time in the daily view and then tap the Tp button, the template will be inserted on the time that you had selected.

Repeat events can be saved as a template, but the repeat status is removed from the template. Attempting to put the repeat back in by editing the appointment in the 1-jan-2020 timeslot will not work as any appointment found in that timeslot with a repeat will not be included in the template list. All attributes (alarms, notes, category, status etc.) are all saved in the template.

Reminder Feature

The Remind features makes it easy to set a future event based on the current time. For example: you need to make a telephone call in exactly 2 1/2 hours. First, set up a template with an alarm (if you want an alarm which will usually be the case) and set the default notification how you want it (i.e. if it says 5 mins, the alarm will go off 5 mins before the 2 1/2 hours is up).

To use the reminder, tap on the Tp button and select the reminder and then tap on the Remind button. A duration dialog will appear allowing you to set the future time of the event from 5 minutes to 11:55. Tap on 2 in the left column (hours) and 30 in the right column (minutes) to set the 2 1/2 hour reminder. Tap on the Ok button to insert the reminder. The selected template will be inserted at a time equal to the current time plus 2 1/2 hours. Datebk3 will move the appointment into the next day if necessary (i.e. if you specify 10 hours at 11pm, the reminder will be set for 9am the next day).

You may want to set up a generic reminder (say with the text: Remind:) as the first appointment (make it untimed etc.) in the template so when you use this feature, you don't even have to select an item in the list. To set a 2 hour reminder would then take only 4 taps (Tp, Remind, 2, Ok). Alternatively, you can set up templates for common reminders (I have one labelled: Turn off Oven!).


Snooze Alarms

When an alarm goes off, the alarm dialog has a set of snooze buttons that can be tapped. The main button in the bottom left corner snoozes the alarm for 5 minutes (the Cancel and Snooze 5M buttons are purposely designed to be big enough to easily hit with a finger so you don't need to pull out the stylus to acknowledge the alarm). Smaller buttons provide for 10, 20, 30, 60 minute 4, and 24 hour snoozes. When an alarm is snoozed, the alarm dialog is canceled and the alarm (and dialog) will re-appear at the snoozed time. When an alarm dialog appears that was tripped by a snooze, the alarm icon in the top left of the dialog changes to a set of Z's to indicate that the alarm is one that was previously snoozed. Snoozed alarms will still go off even if other alarms go off in the meantime, and will also generate repeat sounds at the specified repeat interval (like regular alarms) if they are not acknowledged.

On Palm III's, snoozes can also be assigned a different alarm sound (see the Preferences item in the Options menu of the Daily View). The selected sound for alarms or snoozes will be also be used for the repeat sound if the dialog is not acknowledged right away.

Note that the 24 hour snooze can be a convenient way to deal with daily reminders. For example, if you set a 10-day advance alarm for a birthday, you can then just snooze the alarm by 24 hours to get a daily reminder each day.

Snooze alarms will be canceled for an event if you make any change to the event itself that involves alarms. This includes changing the date, time or the alarm preset for an event. Also, if you delete an event, any pending snooze will be removed as well. Although not likely, it is possible to cause some strange events, by, for example, setting a snooze, alarm, doing a hotsync, changing the alarm on the desktop (where Datebk3 cannot see the change), and then hotsyncing again etc. However, it was deemed more important NOT to lose snoozes over a HotSync, so this type of "strangeness" is allowed as it does no harm.

Be sure to run Datebk3 after doing a HotSync. If you do not run Datebk3, it is barely possible that the built-in datebook application may "grab" the alarms and ring them itself if the next alarm was entered on the desktop prior to the HotSync.


Miscellaneous Improvements

There are several minor enhancements to the built-in Datebook application that have been made:

Variable Purge Date and 'no-purge' events

An annoying limitation of the built-in Datebook application is its inflexibility in specifying purge dates. With Datebk3, when you select the Purge Event option, you get the standard Date picker dialog so you can set any date as the purge date. By default, this date is set to the last day of the month that precedes the prior month, but you can change it to anything you like. Also, Datebk3 includes a warning if you try and purge events with the archive bit clear just to make sure you understand that once this command is issued, no record of the deleted event will be kept.

Sometimes, there are events that you never want to purge. In Datebk3, you simply place the tag: <NP> (for No Purge) in the note field of the appointment. That event will never be purged, even if it precedes the purge date. Todo events from the Todo database are never purged by this command.

Caution: Remember this is specifically a Datebk3 feature - if you go back to the regular Datebook application and purge events, these events tagged with <NP> will of course be purged along with everything else.

If you have a specific category displayed, then only events in that category will be purged - events in other categories will not be touched.

Copy Event

There is a Copy Event item in the Record menu that makes a perfect copy of an appointment, including all its attributes. Note that is different from just using the Copy command in the Edit menu that only copies text. Typical uses of this feature are (a) to make a quick copy of another event, so all you have to do is make a minor editing change and (b) to deal with appointments that span midnight - since the architecture of the datebook database has no provision for handling such events, the easiest way to deal with it is to use the Copy Event command to duplicate the original event, tap the '1' button to advance it to the next day and then tap the Time Selector to set the new time for the event. To further facilitate this, you can set up a template which starts at say 4am and ends at 23:59 (11:59p). If you insert this appointment at a specific time, the end time, will be automatically adjusted so it stays at the largest value, namely 23:59.

The Copy event command can be used to copy normal or floating events but not todo's.

Event Times to the Nearest Minute

Datebk3 uses its own custom time dialog rather than the standard Palm OS time picker dialog. This dialog has the advantage that you can set an appointment time to the nearest minute (handy for airplane and train schedules etc.). Also, the layout of the hours eliminates the need to scroll through a list that is too long to display all at once. A duration button allows you to set the end time by specifying a duration (see below). Also, if you touch the end time for an event, you can then freely change the start time without having the end time adjusted. If you adjust the start time first, the end time is automatically adjusted to maintain the same event duration.

Set End Times by Duration

Occasionally, you enter an event where you know the duration, and it is awkward to have to calculate the end time. Datebk3 caters to this with a Duration button in the time dialog. When you tap on this button, you can then enter the duration (hours in the left list, minutes in the right list) and tap on Ok. On the return to the time dialog, the end time will be automatically calculated for you. If you tap on the Ok button when the dialog first appears, a zero duration will be set for the event.

Quick 1 or 7 day advance

In the Details dialog, you will notice two buttons, one labeled '1' and one labeled '7' to the right of the date selector. If you tap this button, the date is advanced by one day or seven days - it's just a quick way of handling the two most common schedule advances. And of course you can tap the button repeatedly to keep on advancing the date by that number of days. This is especially handy when you want to re-schedule an event by a week, but the following week happens to be in a new month or a new year.

Zero Duration Events

Datebk3 supports zero-duration events - i.e. events whose end time matches the start time. First, a redundant time bar is not generated for a zero duration event (as the current Datebook application does) and only a single time is displayed in the details dialog. Zero-duration events can be selectively filtered in the 2nd weekly, monthly and yearly views. The zero duration can be easily set by tapping on the time in the left column to bring up the time dialog, tapping on the Duration button and then tapping the Ok button twice. Note that there is also a preference option to make all new events zero duration events rather than events of a default 1 hour duration.

Monthly View Improvements

A couple of small improvements were made to the normal monthly view. First, instead of just three slots for morning, noon and afternoon, there are six slots on the left (6a to noon) and six slots on the right (noon to 6p). This makes it possible to see how busy a day is and at what approximate time events are scheduled for.

The untimed event diamond is much larger and the daily repeat dots are also more prominent, making it easier to see when such events are displayed. There is also an option for both the monthly and 2nd weekly views to suppress the display of zero-duration events.

Custom Week Numbers

As mentioned under the preference settings for the second weekly view, there is a preference setting in that view that allows you to set any week as the first week of the year. This week number will be displayed in both weekly views.

Special Note: The Pilot appears to adhere to the ISO specification for Week Numbers (the first week of the year is the first week in the year that contains a Thursday). However, there is ambiguity if the week starts on Sunday since the ISO standard also mandates that Monday is the start of the week. The Psion, for example treats the ISO specification as meaning the first week has 4 or more days of that week. As a result, the Psion series PDA's have week numbers that differ by 1 from the Palm Pilot throughout 1998. Note that the initial setting for the title can be set as a preference item. You may wish to use week numbers that match your fiscal year, or have week 1 mark the start of the academic year, etc.

Start with any View

A preference setting in the Day View allows you to select any one of the five Datebk3 views to be used when the program is started. The Day view and the second weekly views are the usual candidates for this preference setting, but any other view can be selected too. Note that the pushbuttons displayed in the preference dialog are identical to the ones used to navigate between the views. Pressing the Datebook button (when the Datebook button has been re-assigned to run Datebk3) will therefore do one of two things:

If the pilot is powered on and Datebk3 is running, Datebk3 will move to the next view in sequence. Exception: in the day view, if the current date is not being displayed, Datebk3 will first move to today in the Day view before going to the next view

If the Pilot was powered on with the Datebook button, Datebk3 will start up with the view specified in the preference setting.

Quick Jump to Today's Date

To jump to today's date in any of the five views, simply tap the button corresponding to the view that you are already in. Normally, this button would have no function, so Datebk3 assigns a useful function to it.

Untimed Event Sort order

Datebk3 sorts all untimed events at the start of the day and separates them into categories, sorting them alphabetically within each category. The order of these events is:

Note that the alphabetic sorting can be used to sort the floating events into priority order by the simple expedient of putting a digit from 1-9 as the first character of the event description (i.e. instead of Call John, Post letter, do: 1 Call John, 3 Post letter etc.). Untimed events in the Datebook application are generally displayed in two groups with non-repeat events preceding repeat events (just a side-effect of the way that the code was written to gather events). Within those two groups, items are displayed in the order they occur in the database which usually (but not necessarily) indicates the order in which they were entered. In Datebk3 all untimed events (repeat and non-repeat) are sorted in alphabetic order. This feature can be used to enforce a desired sort order by simply tagging the event with a character. For example, it is handy to tag all important repeat events with say an '*' at the start - that guarantees they will sort ahead of all events that start with normal alpha characters. By starting an event with a '~' you can sort the events at the end of the list.

The sorting of untimed events could be deemed undesirable by some people. If we have enough requests to revert back to the way the Datebook application handles them, we could put in an option to suppress the alpha sort on untimed events in a future version. Email cesd if you have comments on this issue.

Day of Week Buttons in Day View

If you tap on the first day-of-the-week pushbutton, you are taken to that day. If you tap it again, it will take you back one day more (to the end of the previous week). In the same way, if you tap on the last day-of-the-week button when that last day is displayed, it will take you to the first day of the following week. It's just a nice feature to move to the days adjacent to the first and last days of the week while still using the stylus.

Up/Down Buttons can scroll and then move

A preference option in the more preferences menu allows the Up and Down buttons to scroll first before moving to the prior or next day. If this option is checked, then when the Up button is pressed, Datebk3 will first try and scroll to prior appointments on the same day. If there are no prior appointments, then it will move to the prior day. If the Down button is pressed, Datebk3 will first try and and scroll to later appointments on the same day and will move to the next day if there aren't any.

If you choose to use this option, you may wish to uncheck the following option.

Turning off the auto-scroll on today

The standard Datebook application has a feature to automatically scroll the display on the current day when it is first viewed to try and make sure that upcoming events on that day are not hidden below the screen. Some people do not like this feature, so Datebk3 has an option to turn it off. By default this feature is enabled. Note that if you select the prior option (Up/Down Buttons can scroll and then move) you may well want to turn this feature off, otherwise, when you scroll forwards through today, you may miss some appointments/todo's.

On the other hand, some users will find this feature particularly useful if there are a lot of todo's, as it will automatically scroll the display so you can see upcoming events more easily.

Datebk3 Alarm Handling

Alarms set in the Datebook database have been handled by the built-in Datebook application. With V-2.0, the default option is to have Datebk3 handle alarms instead. By handling alarms itself, Datebk3 can bring the features of a repeat interval and repeat count (as in the Palm III built-in Datebook application) to all models of the PalmPilot. However, there are some hacks and alarm add-ons that may be expecting alarms to be set by Datebook and which therefore may not work if Datebk3 handles the alarms. In that case, you may want to uncheck the option: Datebk3 Handles Alarms in the Preference menu of the Daily View. Whenever you change this option, be sure to do a Soft Reset (just poke the reset button at the back of the Palm device) to ensure that the switchover is made, otherwise, the two applications could compete for handling alarms.

In V-2.1, you can also specify the number of times an alarm is to sound in succession. On the Palm III, some of the custom alarms are rather short, so this feature can be used to make them more noticeable. The first alarm is sounded normally when the alarm triggers. The remaining repeats continue after a short delay as they are postponed until after the dialog appears. At that point, you can cancel the repeats by pressing down on the screen with the stylus and holding the stylus down until the alarm stops (a quick tap may not be sufficient to stop the alarm).

It is possible that the first alarm that sounds after this option is changed may not operate in the expected fashion, but it should be ok for subsequent alarms (and may in fact almost always be correct for the first alarm too).

After a reset or date change, the Palm OS signals the built-in datebook application to reschedule its alarms. Datebk3 uses the same database, but the built-in datebook application obviously does not know about this. If you have the option set for Datebk3 to handle alarms, Datebk3 attempts to kill any alarms set by the built-in datebook application and reschedules them for Datebk3 so that all the Datebk3 options apply.

The only known case where the built-in Datebook application can set an alarm is if you enter a new event on the desktop application with an alarm that qualifies as the very next alarm to go off, do a HotSync, and then never run Datebk3 or do a soft reset. This is considered such a remote possibility and is so complex to fix (it would require an entire hack just to handle this one case), that it has been ignored in Datebk3.

Eliminating all time bars in Daily View

If you set the start time equal to the end time in the Preferences menu of the daily view and set both times to 12:00am (00:00 on a 24hr clock), then Datebk3 will not display any time bars other than one's associated with appointments. A day that has no appointments will therefore be completely blank. Note that this only happens if you set both times to 12:00am.

Hiding End Times of Events

This option removes the ending time bar in the daily view for an event, so each event will never take up more than one time bar in the daily view (unless its text wraps to more than one line). This option replaces the Round Duration option of prior versions of Datebk3, as it was generally used to accomplish this particular goal. The advantage of this change in V-2.1 is that the ending time for the event is not disturbed, while still achieving the desired display.

New Button inserts Appt., Float or ToDo

The New button at the bottom of the screen in the Daily View can be set to insert a new appointment, a new floating event or a new ToDo from the ToDo database. The action is specified by the setting of the preference pushbutton in the More Preferences dialog.

Selecting overlapped items in graphical Weekly View

If the start and end times for an event are identical, the built-in datebook application makes it impossible to select the second and subsequent events in the graphical weekly View. Datebk3 displays a More button if there are two or more events with the same start and end times, and allows you to view the details of each subsequent event by tapping on the button.


dbScan - Datebook Database Integrity Checker

dbScan is a small utility program which performs an integrity check on the Datebook Database. Just temporarily download the program to your PalmPilot and tap on the dbScan icon in the application screen. Press the Start button to run the program. If it finds an error, it will display the error condition, record number, start date and the first 24 characters of the description field. When you tap on the Continue button, a second dialog appears where you have the option to ignore the error or remove the record from the Datebook database.

The only thing you have to remember after running dbScan is to make sure that if you remove some records, you set the preference for the next HotSync so the PalmPilot overwrites the Desktop. Otherwise HotSync will dutifully "restore" the records that you just removed. It is 100% safe to run at any time, so you should have no concern about running it. Most of the "errors" in the datebook database are invisible because corruption usually means that the record won't be displayed (example: record has an end date that precedes the start date, etc.).

One of the more common "errors" is to have a repeat event that never displays (and which therefore can never be deleted) because each occurrence of the repeat event has a corresponding exception for the same day.

If you experience some odd behavior in the Datebook or Datebk3 applications, it's a good idea to download this program and verify that your database has no corruption or odd records in it.


Download Problems

You may encounter problems downloading a large application like Datebk3, especially if you have a V-1 or V-2 PalmPilot as those machines suffer from an OS that actually forces fragmentation of memory(!). That serious design flaw was finally fixed in the Palm III, so that should be much less of a problem.

HotSync is just not a stable application. As a developer, I probably HotSync 30-40 times a day and it's truly amazing the number of HotSync's that fail for no apparent reason. For example, I was recently downloading version 2.0 of Datebk3 onto a 1mb V-1 Pilot that had nothing loaded on it except the TRG defragger. I had defragged the machine (I do that as a matter of course now as it does make a difference) and still the HotSync failed with a fatal exception.

As near as we can tell, there are three main reasons why HotSync's fail:

This last item is significant. Some people attempt to do other things while HotSync'ing, like downloading email, printing in the background, loading programs etc. etc. and those can easily cause a timeout condition on the HotSync. For that reason, we suggest that you do not do anything else on your machine while you are HotSync'ing - just leave it alone! This will reduce the number of problems you see while HotSync'ing.

After resetting your Pilot, you may encounter the "looping reset" problem where it keeps on flashing the splash screen over and over again. There is no need to do a hard reset to recover from this condition. Do a "warm" reset - hold down the UP button on your Pilot while you poke the reset button and your Pilot will go to the applications screen (with all hacks and the system OS disabled). You can then find the partially downloaded program (you may see just the name and no icon) and remove it with the MEMORY application. The reason you see the looping reset is that whenever a reset is done, a special RESET message is sent to all loaded applications, but the Pilot does not, unfortunately, check to see if a program was loaded properly(!) so the partially loaded application crashes when it gets this message. The "warm" reset prevents this message from going out.

There are two solutions to this problem:

  1. Use a defragger to defragment memory so you can load the application. I use TRG's defragger which works very nicely. There is also a defragger called Recycle by Deskfree. These programs are available from Palm Archives. Since you've run into a low/fragmented memory condition, you might find it worthwhile to get one of these programs as this will not be the last time you run into this problem.
  2. Perform a hard reset on your Pilot and download the LARGEST programs first, followed by smaller programs. This will also solve the problem as memory is not fragmented after a hard reset. If you do a hard reset, you might want to read the Safe Hard Reset  procedure below which tells you how to do a hard reset properly.

One final word of advice: do not do anything else on your PC or MAC while HotSync'ing. Sometimes, errors can occur because the PC gets tied up in some other activity (such as printing, loading a big application, etc.) and the Pilot times out the HotSync application running on the desktop. We recommend that you do nothing else while HotSync'ing to download Datebk3.


Safe Hard Reset procedure

First, do a normal HotSync of your Pilot to your desktop. Then, locate the PILOT directory on your desktop and the sub-directory that is based on your HotSync name underneath it (if your hotsync was "George", then there will be a directory called 'George'). In these notes below, we will use GEORGE to represent the name of your hotsync directory. Make sure that the HotSync completed normally, without error

Make a copy of that entire directory (Select the \PILOT\GEORGE directory and press CTRL/C to copy it, then select the PILOT directory and press CTRL/V to paste it. A new directory with the name: COPY OF GEORGE will be created. It's not a bad idea to make copies of that directory from time to time JUST in case it gets corrupted for some weird reason.

Do a hard reset on your pilot - Hold down the ON button while poking a paper clip into the small RESET hole on the back of the pilot. Release the ON button. You should now see a message on our Pilot saying ERASE ALL DATA? Respond by pushing the UP button to confirm that you want to do that. You will need to recalibrate the digitizer screen. If you don't see the ERASE ALL DATA? message, just try the reset again (let go of the paper clip BEFORE releasing the ON button).

Click on the HotSync icon on the toolbar at the bottom right of the screen (Windows95). Under Win3.11, you would have to locate the HotSYnc program and launch it (I think! been a while since I used Win3.11!). A popup menu appears, select the CUSTOM option and a dialog appears. On the left is the name of a conduit (for each application) and on the right is the action to take. Normally, the action is to 'synchronize the files'. For each application that says 'syncrhonize the files', select the conduit and click on the CHANGE button. In the new dialog that appears, click on the option that says: DESKTOP OVERWRITES PALMPILOT and click on OK (make sure the SET AS DEFAULT checkbox remains UNCHECKED!). DO the same thing for the SYSTEM conduit. When you are done, click on the DONE button in that dialog.

Now do a normal HotSync of your Pilot. At this point, you will have restored your machine with a couple of exceptions:

1. Any system type preferences (time,date formats, etc.) will need to be set again
2. Any 3rd party applications will now need to be re-installed.

You might start out by installing the largest applications first (in particular, I suggest you install Datebk3 at this point).

If there are any third party applications whose data does not appear to be present on your pilot, their data files should have been stored in the \PILOT\GEORGE\BACKUP directory as *.PDB type files. Just use the regular PalmPilot install program to install those databases from that directory (or from your 'Copy of George' directory if they appear to have been overwritten for some reason).


Registration Information

Datebk3 Registration:  $20
Upgrade from WeekView to Datebk3: $10

(Note: RegNet registration fee for Datebk3 is $25. Upgrade is only available through PilotGear or direct mail).

For information on ordering, point your browser at: Datebk3 Ordering Information, tap on the i symbol on the title bar of the Registration Info dialog in the Options menu in Datebk3, email cesd or write to this address:

Pimlico Software
2031 Lowery (Old Loving) Rd
Morganton, GA 30560


Suggested/Planned Enhancements

  1. Ability to put an entry in bold text to make it stand out
  2. A display-next-occurrence-only attribute for repeating appointments (as on the Psion)
  3. Display years since start year for anniversaries (yearly appointments)
  4. Quick display window of appointments for monthly view (so you can tap a day and see the text of appointments for that day without having to go to another view (in a manner similar to the graphical weekly view).
  5. Further language support. All text is in resource files, so it will not be difficult to generate customized versions for various
    languages (German has been done, French and Spanish are also planned).
  6. One-tap alarm (so you can set or clear an alarm without having to invoke the Details dialog (3 taps).
  7. A List type view which would list appointments in chronological order with the date and time and be fully scrollable. Especially useful if it could just show Todo's (the only thing that the todo application is useful for)
  8. A function to locate free-time (as in our MonthView program for the Psion). Preference settings establish which days are business days and the start and end time for the business day. You can then ask the program to find the earliest day in which an appointment of HH:MM duration can be placed without overlapping any existing appointments.
  9. Display a small dot in Yearly view to show that there is an event there even if it is not significant (so a completely blank slot shows that day to be completely empty.
  10. Adjust display for left-handed users
  11. Have two tables in Day View - one for Todo's and one for appointments that can be swapped vertically and re-sized.
  12. Allow selection of specific categories to be displayed.

©, 1998 Pimlico Software. All Rights Reserved