PTimLog (c) 1998 - 2003

by Maik Boenig

Documentation for Version 4.55 and above

This Software is distributed as Shareware. If you like it, please register at Registering fee is only 7$. The unregistered version requests for registering once a month. In addition it is not possible to enter notes for records and show decimal time-values. Also, it isn't possible to enter fractial vacation days or use more than one client. These are the only differences to the registered version.


PTimLog manages your daily working times. It keeps track of your overtimes, remaining holidays, days of working, .... You can define projects, enter times you've worked for them and get statistics of them. Besides it shows a graphical overview of a selected year. Complex working models like early-, late-, night shift can be handled by defining several preferences, where normal working times, lunch break, ... were be defined. Other features are the creation of Memos with a summary of your working times with selectable details and a user-defined range as well as the possibility to create Datebook-entries of your working time. PTimLog is my first project for the pilot. I started developing with the free Gnu and Pilrc Resource Compiler. Many thanks to all of you, who where participated in these programs. With adding more functions, PTimLog went to big to handle with the Gnu Compiler. So I rewrote the source to use it with Codewarrior.


Getting started

If there is an older version already installed, please refer to the update- description included in this archive. Unzip the file 'PTimLog.prc' and use the Pilot Install program to install it on the pilot. After the next Hotsync, PTimLog should be available. When you start PTimLog for the first time, you have to define some preferences. Refer to the documentation of the preferences for more information.


Main View

Main Screen

This window gives a short overview of the most important values. Therefore these values have to be calculated at startup of PTimLog, if a changing of a relevant parameter has occurred (you can disable this feature: refer to Global preferences). The following values are shown (from top to the bottom):

  1. The first value shows the remaining hours and minutes for the current week. Records for dates in the future, but in the current week, are taken into consideration. For example, this can be a holiday at the end of a week. Overtime-work, which was taken into the current week, is not taken into consideration.
  2. The second values shows the remaining hours and minutes of the current month. Like above, all relevant data (not only data in the past) is considered. Only worktime for the current month flow into the calculation of this value, so overtime of the last year does not change this value.
  3. These are hours and minutes remaining in this year (I know it's nothing you really want to look at). The remarks for 1. and 2. apply to this value, too.
  4. The fourth field shows the remaining days you have to work in the current year. In contrast to point 1. to 3., future entries are not taken into calculation. So, if you have to work 50 days and have 30 holiday-days left, be happy :-). The current day is not taken into consideration for this value.
  5. These are your remaining holiday-days for this year. They are calculated at a day-basis Entry for days in the future are taken into consideration depending on a selection in the global preferences (see 'global preferences'). Because of the possibilty to take fractional vacation days, they are shown as a floating-point value.
  6. If it's possible to collect time on extra work, which can be taken another day, this field shows the collected overtime (differences of this field compared to the value shown in the window of all records are described and explained below).

In the left of these values are bottoms with brings you to the list of records for the selected range: 1. 'time remaining this week' lists all records for this week. 2. 'time remaining this month' lists all records for this month. 3. 'time remaining this year' lists all records for this year. 4. 'remaining working-days' has no effect (just for optical reasons). 5. 'remaining holiday-days' shows all taken holidays and holidays, which are already planned in the future. 6. 'current worked overtime' lists all records.

If you press the 'New' button , PTimLog changes to a new screen, where you can enter a new record.

The title of this screen changes about every 5 seconds between the current date and the name of the choosen client; Please note: This only happens, if you defined a client - see next chapter).


Clientlist (choose client)

PTimLog is able to handle multiple clients (registered version only). Every client has its own contracts, records and project definitions and is identified by its own name.

You do not need to enter one or more clients. If you do not enter a client, PTimLog takes a predefined one. If you open the client screen the first time, you need to enter a name for the standard databases. After that, your records, contracts,... are tied to that client. However, you can rename the client whenever you like. The current enabled client is shown in the main screen in the title bar (it changes periodically and shows the client name or the current date).

First definition of a client

You can reach this screen from the main-screen, if you tap at the 'select client' at the 'commands'-menu. The 'Ok'-button brings you back to the mainscreen and changes to the choosen client.

Choose Client

Every client has it's own databases; so if you want to reinstall PTimLog, you have to install all databases for all clients.



Record List

Depending on the selected menu or the button you've pressed, you see all records for the selected range. The range is shown at the top of the screen. If there are more records to show than to handle on this screen, a scrollbar is displayed. It gives you the possibility to scroll through all records. Tapping on an record opens the screen, where you can edit an record. All records are shown in a list. Shortly described, the list consists of five columns:

  1. The first column shows the date of the record.
  2. The second column shows the time of beginning of the record.
  3. The third column shows the end-time of this record.
  4. The fourth column (named +/-) shows the worked overtime for this record.
  5. The last column displays the sum of the fourth column.

For 'normal' records, all items have usual values. But for special records, the items get other values:

There are two types of lines appearing in this screen. A dotted one and a normal line. This is for clearness. A dotted line appears between the end of one week and the beginning of another. A continuous line appears between different month.

At the bottom of this screen, there are two or four buttons with descriptions depending on your selection. They are described from left to right.

  1. By pressing the 'Close' Button you return to the window you see before.
  2. The next Button is labeled 'Next X', where X is one of the following characters: W,M,Y. It depends on your previous selection and means 'W'eek, 'M'onth and 'Y'ear. This button changes to the next range of the same type. For example: If you've selected a week-overview, you can change to the next week. (1)
  3. The third button from left is the same as 2., only that you select the previous range of the same type. (1)
  4. The last button is separated from the other three buttons. By pressing, the character right of this button changes. The characters have the follwing meanings:
    'R' number of records
    'C' the current overtime is displayed.
    'B' billable time
    'b' unbillable time
    'M' shows the maximum sum in the selected range
    'm' shows the minimum sum in the selected range
    '+' sum of all positive records
    '-' sum of all negative records
    'N' number of records with an overtime > 0
    'n' number of records with an overtime < 0
    'W' working-days for choosen range
    'T' worked time in the selected range

If you choose a week-overview, you can see a number in the upper right corner. This is the number of the choosen week. Because the definition for the first week varies for different countries, you can set your definition in the global preferences.

(1) These buttons are not existent, when you choose a user-defined range.

NOTE: When you choose to show all entries, the sum isn't necessary the same value as in the main menu. The reason for this is, that in the list only the records are considered. So if you forgot to enter a record for a day, this is not calculated in the list view, but in the main window.

The column-descriptions as shown above are the standard-descriptions. You can change these descriptions (and therefore their meanings): Just tap at the descriptions of your selected column. For each column you can choose between the following values:

Possible column descriptions

If you choose Project(long)/Project(short) at two or more columns next to eachother, those columns are tied together and show even long descriptions.

Registered version: The choosed column descriptions are stored in the registered version. So you don't have to set them each time again.

In every overview-screen you can tap a every record and a popup-menu comes up:

Options you have when you tap at a record

With these options you can delete or change the status of the record without the need to open the record. However, if you like to can open the record. The options are depending on the record itself. If a record isn't billed, then instaed of 'not billed' you have the option 'billed'


Plotscreen for an overview

plotting an overview

You reach this screen when you tap at the menu-item 'plot' at any overtime view. It just gives you another view at your overtime situation. The dimensions at choosen automatically by PTimLog.


Preferences List

Preferences are mainly used to define your working conditions.

If you like to change existing preferences, then go to the menu 'records' in the main screen and tap at the item 'show all contracts'. Now a screen opens showing all defined contracts. Tap at the one you like to change a you go to the Prferences-screen part 1.

{short description of image}

Preferences Part 1

When you want to add a new contract or tapped at a existing contract in the preferences-list, you'll see the following screen (When starting a new contract, this screen is empty).

Preferences Part 1

The first two fields (over the separator) are used for presettings. They have nothing to do with the calculation.

The field ('lunch-break') describes the normal lenght of your daily lunch-break. The format for this field is hh:mm or just mm. A decimal format (like 7,5 for 07:30) is also accepted. Your entry is used as a standard setting for new entries of your daily working time. Of course you're be able to set different lunch-breaks for each working day.

The 'Begin' and 'End' describe your normal working time. You can set this fields manually (format hh:mm or decimal) or use the Select Button at the right.

The following fields are used for the calculation. Therefore these are the fields, where you enter your contract-settings.

In the field ('effective as from') you have to enter the date, when your conditions become valid. The format is defined in your System-Preferences of your Pilot. Look at them under the Pilot-Program 'Prefs'.

'Working time per week' describes the weekly working time in the format hh:mm. You can't set this value in this screen. You have to go to the working-times dialog by pressing the Select button.

The field 'Days of holiday-time' requires your holidays per year.

'Suppress missing dates-warnings': If this CheckBox is not marked, PTimLog does remind you of missing entries. If you, for example, worked Monday to Friday as your standard working days and forget to enter a record for Thursday, PTimLog reminds you of this missing entry.

In 'Normal working days' you have to check all your normal workdays. The reminding of missing entries (see above) depends on this setting.

If your contract changes, you are able to set those new settings in addition to the old ones. To do this, you can simply add other preferences.

If you enter more than one preference, the one with the later date disables the ones with earlier dates after the validation date; the later one takes turn of the earlier one from this point on.


You have the following contract: 40 hours to work weekly
5 days of working per week (Monday to Friday)
28 vacation-days per year
Your normal working times are: You work 4 days (Monday to Thursday):
07:00 - 16:30 with
00:30 lunch-break
1 day (Friday):
08:00 - 12:00 with
00:00 lunch-break
Your recording begins at: 04/01/xxxx
Your overtime at 03/31: 14:20
Your taken holidays at 04/01: 3

Your settings for this situation:

a) Preferences: Cutoffs

Overtime at start: +14:20
vacation days at start: you have to calculate this value: For the time 1/1 until 3/31 you get proportionate holidays: 28/12 per month multiplied with 3 month (jan-mar) = 7 So you get 21 days for the time 4/1 - 12/31. This is the value which PTimLog shows. You took 3 holidays out of the 7 for the first three month, so you have 4 left for the three month. So, you enter the the value '+4' in this field.

b) Preferences Part 1:

lunch-break Mostly you made a lunch-break of 00:30. So enter 00.30 into the lunch-break field. When entering the record for Friday, uncheck the checkbox for the lunch-break
Begin/End: You normaly begin at 07:00 (most of your working days). You end most times at 16:30. So these are the values you enter in the begin/end fields. When you enter the record for Friday, you have to set your working times manually via the dialog box, otherwise the the values of the time dialog are preset
effective as from: The date you start your recording: So enter 04/01/1999
Days of holiday time: As in contract: 28
Normal days of working: Monday - Friday


Preferences - Working times

If you press the 'Select' button, which is placed at the screen 'Preferences - part 1' right of the label 'working time per week', a new dialog opens:

Working times

From version 3.00 on it is possible to set different working times for every day. You can enter all times in format hh:mm, hh or in a decimal format. Copy/Paste is available through the menu.

In addition, you can set timefactors (TF) for every day of week. The timefactor is used, if you work on that day. Timefactors are entered in 10th. A value of 15 means, that the worked time for that day is multiplied with 1,5. For holiday days, you can set another timefactor (TFH). You have two options to use this timefactor: The first one is if the TFH-pushbutton isn't pushed. Then the timefactor of the corresponding field is used instead of the timefactor for the corresponding weekday. If the pushbutton is pushed, then the timefdactor is used in addition to the timefactor for that weekday.

The unitsize-value describes the size of time-differents between two overtime-steps. Example: If you set this value to 5 minutes, then 4 minutes overtime counts as 0 minutes overtime, 5 minutes as 5 and 6 as 5, too.

In addition, you can enter a value, which describes, how much overtime a day is needed, before counting as overtime. Some contracts say, you have a working time of 35 hours (for example), but have to work up to 1 hour more a day, before counting as overtime.


Preferences Part 2

Repeating holidays

This screen gives you the possibility to enter repeating Preferences. If you - for example - have two alternating working conditions (one week early shift from Monday to Friday, the other week late shift Tuesday to Saturday), you can set this condition with only two preferences. All you have to do is to set a repeating delay of two weeks for both with one set goes a week behind the other.

Defining preferences this way is nearly the same as defining every preference as one record. There's only one difference, which you can see, when you try to delete preferences of such a group. Then you have the possibility to delete only the selected item or the whole series of preferences.

You have to set an enddate for a series of preferences.


Preferences Part 3 (Cut off values)

Cut offs

There are many contracts allowing the 'collecting' of overtime. For example, you can have an amount of 12:00 overtime at the end of a month. You can decrease this time in the next month or take it over into the next. But there are also company, where you only can have a maximum amount of hours to take into the next month. At my company, I can take 20:00 into the next month. If I, for example, have 25:00 at 01/31, I loose five hours. So at 02/01 I only have 20:00 left (in fact, I try to decrease this amount by taking some free time...). Other companies allow any amount over the year, but at year's end, you loose everything.

In Germany you have (as far as I know) to take all holidays for a year until the 04/01 of the following year, otherwise you loose your holidays left for the old year. An Example: You have 30 holidays in 1997 and 30 in 1998. In 1997 you take only 25. So you have 5 holidays left for 1997 (in sum: 35 in 1998). If you do not take a holiday until 04/01, you loose these 5 days, so you only have 30.

You can define this situation in PTimLog. Therefore you have to open the Preferences screen, where all your contract data is defined. Then by pressing the 'Cut off'-Button, you see the screen for defining the above situation.

In the first section you can define the hours you can collect: If you select something other then 'never' in the trigger, the input-field for the hours appears. Enter the maximum amount of hours you can collect. The trigger defines the date for 'cutting' everything over this amount. For my situation the trigger is set to 'End of month'. The Time I have to set, is '20:00'.

In the second section you can define the holidays-situation:

In addition, this dialog allows the user to define, if a new contract begins with zero holidays or zero overtime-hours. This is helpful for the following examples:

  1. You change the company you work for. Then normally you are not allowed to take the holidays and overtime from the old contract to the new one. Therefore you start with zero holidays and zero overtime-hours. So both checkboxes have to be marked.
  2. You company changes the contract. For example, your weekly working time changes from 40 to 38 hours. For this change you have to define new preferences. But your old holidays-/overtime-amount can be taken to the new contract. So both checkboxes remain unset.

There are other exaples, where you can take your holidays, but not your overtime and vice versa.

Part three and four allow to define values, which are taken as start-values for the current contract. (Until 3.00, the start value for the first defined contract was defined in the global preferences). For every contract you can define this value independent from any other contract.

The last part defines the length of lunch-break you have to take after a certain working-time. It's not possible, to create a record, when ignoring this lenght. In germany, we have a law defining this lunch-break-length. An example. You define the following values in PTimLog:

After 2 hours of work you have to take a 30 minutes lunch-break. After working an additional hour (3 hours work), you have to take an additional 15 minutes lunch-break. Finally, working 5 hours (for example), you have to take a lunch-break of 30+15+20 = 65 minutes.


Global Preferences 1

Global preferences

This dialog is used to define global settings for PTimLog. These are:


Global preferences 2 (DS)

Daylight saving times

This screen defines the daylight saving times for your country. This screen opens if you tap at 'global preferences 2' in the menu of the main-screen.

They are interesting, if you start work at these times. PTimLog takes care and calculates the correct time, so you have one hour more than the difference of start/endtime (or you loose one hour).


Global preferences 3

global preferences 3

This is the third screen for global preferences. It currently consists only of two points.

I was asked to include a possibility, that already earned overtime do not lower the time to work a week, month or year (e.g. you have 10:00 overtime and should normally work 40:00 hours a week, then in the main screen you see 30:00). This is done with the option 'use no overtime in mainscreen'. If you check this checkbox, you get 40:00 in the main-screen.

'Restore old status after start': If activated, PTimLog saves the status, if you leave PTimLog and restores the status at the next start. This feature is only available if PTimLog is registered.

The third option defines the algorithm used for caching. When calculating the values in the main screen, PTimLog has to perform complex algotihms, which can take up some time - especially when you have records for more than one year. When using caching, PTimLog speeds up the calculation (up to 400%); Choose a algorithm depending on your frequence you have to enter records; if you enter records at month-end for the complete month, choose a pessimistic alogrithm; if you enter records on a daily basis, choose a optimistic algorithm.


Entering a new record

New record

You can enter a new record by tapping on the new button in the main screen. As an alternate you can get to this screen, if you do not mark the 'Suppress missing date-warnings' Checkbox in the preferences (see above) and PTimLog finds a day, which seems to be a normal working day, but which has no record. Then you get to this screen with the missing date entered in the Date field.

First you have to select a date for the new record and enter it in the date field. You can set the date manually or you choose the Select-Button. The date must have the format you defined in your System-Preferences of the Pilot.

After that you have to select the Begin- and End-time for this record (in most cases the period of your work). The format for these two times is 'hh:mm' or a decimal format. By tapping the Select-Button you can set the time fields via the normal dialog. This dialog opens with the predefined times you set in the preferences (see above).

The flag 'billable' selects, if this record is billable or not (a billable record is not neccessary a billed record; it just shows, that it can be billed. The billed flag for billable records gets introduced in one of the next versions of PTimLog).

Then you have to select, if you have a lunch-break during the time of your record.

The next input you have to do is the description of your record. You should choose


NOTE: You have to keep an eye on your selected lunch-breaks. If you enter more than one record for a day and set for every record a lunch-break, the calculation goes wrong.

The next requested input is the length of your lunch-break (if you had one). You can set a length manually by selecting the time or you choose the entry 'Preferences'. If you select 'Preferences', the program takes the length of your lunch-break out of the correspond preferences.

The optional comment can hold up to 16 characters. Here you can describe the work you've done at the selected time. Also it's possible to enter the ShortCuts (the short names) of your projects done at the specified time (see 'Define Projects'). To make it easier to enter the projects, you can press the 'Comment'-Button. Then a new dialog appears, where you can easily choose the Project(s). This dialog is described in the next chapter.

The possible fields depend on your description: For example, if you choose 'go on leave' you do not have to enter start/endtime. If you choose 'manual de-/increase' you only have to enter the unsigned-value.

Choose 'OK' the save the new record or 'Cancel' to abort. Before saving your record, PTimLog checks your definition of mimimum-lunch-breaks (see Preferences - Cutoffs).

If you are in editing-mode (you come from an overview-screen), you can use the up/down-key to go through all records. The up-key shows the next record, the down-key the previous one. If you made changes before using one of those keys, all changes are stored.


Account handling

PTimLog is able to handle up to 16 accounts. Every account tracks time. You can transfer time to every account or get time back. So if you like to track overtime you get paid for, this is the right way. If you haven't already defined accounts, you can define accounts the following way:

First create a new record and choose 'transfer to account' as the description. Then a new popuplist comes up. This popuplist shows all defined accounts. Just tap the list to see them all.


If you like to choose one of the list, just tap it. Otherwise, tap 'Edit categories' to create a new one:


If you created all accounts needed and transfered time to that account, you can get a summery for all accounts. To do so, go back to the main screen and recalculate. This is necessary, because the accounts only get recalculated at the time a recalcalulation is performed at the main screen. After that you can go to the 'Records' menu at the main screen and choose 'View all accounts'

Acoount - balance

You'll see the first of your defined accounts and the transfers regarding that account. The last line is the sum, the account currently holds. With the popuplist at the top of the screen, you can change the account. At the bottom right you see the number of records manipulating the account.

Account balance


Notes (only in registered version)

It is possible to enter a note up to 3000 characters for every record. Once a note is added, notes can be easily changed, copied, deleted, moved, appended and swapped simply by using drag and drop.

To create a note, call the record for editing and press at the note-button. The note can be created just the way they are created in the memo-pad application. Copy/paste is available.


A record with a note gets a note-icon in all overviews. The icon is right beyond the last column.

The note can be changed by opening the record with it and pressing the note- button (the same way as for creating the record). Another possibility is to tap at the note-icon in one of the overview-screens. Then a list with all possibilities for this icon appears. Choose the one you like (or cancel by tapping outside the bounds of that list).

Drag'n Drop

In all overview-screens drap and drop is supported. Tap on the note-icon and drap it on another record. Depending on the record, where the icon is released, a list with all possible actions appears:

  1. If the record, where the icon is released, has already a note, you can choose one of the following operations: append and swap
  2. If the record, where the icon is release, has no note, the following options appear: copy and move

You can cancel the operation by tapping outside the bounds of that list. The global find performs NO find on notes for records (performance).

Menu after drag and drop from a note


Add Projects to records

If you like to add projects to your records and the time for that record as time worked on a project, create a record and push the project-button. Then a screen comes up and shows all projects:

Project list

The dialog-title is 'Add Project'. You get a list of all defined Projects (as long as you defined projects...). Also you see your actual comment-field under this list.

The list shows the long-names of your projects. If you have defined projects without long-names, the short-names are displayed. Those projects get a '(s)' added behind their names.

By pressing the description-button you'll see the description, as long as you had entered some. If not, a message appears. With add, the short-name of the project is added to the comment-field. You can add as many projects you want, as long as the length of the field don't reach the number of 17 characters. You also can edit the comment-field manually.

From the menu you can choose 'Move project'. Then you have to tap onto the project you want to move. After that tap at the new insertion point. The project is moved to this position.

By pressing the OK-Button, this dialog closes and the changes are taken into the previous dialog. When pressing Cancel, changes are not taken into the previous dialog.


Editing records

If you like to edit a record , choose an overview containing the record and open the record (see above):


Now appears the same screen as for entering a new reocrd, except the new 'Delete' Button. I think, this button is self-explaining.

Edit modus


Creating Memos

How to create memos

You can create memos of your records. The content for the memos are user-definable. You create memos by selecting 'Create Memos' in the menu of the main screen. Then you were asked about the contents of your memos. The resulting memos are a list like the one in the List screen. After you selected your contents you can select the begin and end-date of the range of the resulting memos.

The software produces seperated memos for every month.


Creating Datebook entries

It's possible to create datebook-entries out of your entries recorded in PTimLog. These entries book the time you've spent at work with a comment that they are created by PTimLog. To create these entries, just choose the menu and set the begin and the end-date for the operation.

Note: If you don't know, if you like or dislike the entries, try this point with a small number of entries by choosing a very small date-range. The entries have to be manually removed, there is no remove-option !!


Reset Archive Bits

You can choose this function by selecting the menu 'change archive bits' and selecting 'reset' in the pop-up dialog.

With creating datebook-entries, archive-bits are set. This helps to avoid doubled entries. So if you create datebook entries for a range with already existing entries, they are not be created again.

But even if you delete these entries in the datebook, you can't create them again. To do this, you have to reset the archive bits. But beware: after resetting the archive-bits you can create items in the datebook, even if they already exist. To avoid this, you can try to update the archive-bits.


Update Archive Bits

You can choose this function by selecting the menu 'change archive bits' and selecting 'update' in the pop-up dialog. This point resets the archive-bits and searches afterwards the datebook for items created by PTimLog. Found items get a new archive bit.

Remember: This only works, if the datebook-items from PTimLog were not changed. I can't guarantee the work of this operation, when you've changed an item. So the best thing is not to edit any of the items created by Job- Time.


Graphical overview

You can generate an overview over a complete year:

graphical overview

Do do so, select 'Graphical overview' in the menu of the main screen:

Menu for graphical overview

You can change the year by using the corresponding menu. There are various icons representing the types of entries like holiday, normal work, ...

All available icons

The description of those icons also can be found in the program. Like said above, you have more than one possibility to create entries for a normal working day. The first one is, you create one entry for the whole time.

Let's say you normally have to work 7 hours a day. On one day you work 7:30 hours.

  1. You enter 7:30 in one record with description 'normal work'
  2. You enter 7:00 in the first record with the description 'normal work' and a second record with length 0:30 and description 'work overtime'.

Both cases are handled the same way. All calculated times are the same. The only difference is in the graphical overview: There 1) and 2) are handled in a different way.

  1. Depends on setting of the global preferences. If you chosse no deeper algorithm, those days are shown as normal working days. You have no possibility to decide whether you've worked longer or not. If you choose a deeper algorithm the program gives you an information on your working time that day. You can see if you worked shorter, longer or the normal time.
  2. Working times entered in such a way are shown as a '+'.


Define Projects

This function (together with the following) helps you keeping track of your projects (but not in that great way you may like to have).


First of all you have to define your projects. A project is defined by giving it a short name; when you enter your daily working-time and add this short name as a comment, the new record defines time worked for the project. Because of this reason, all projects should have unique names and should contain normally not used characters like '%','#',.... Examples are '%pr1, %pr2, ....

It is possible to define more than one project to a new working-entry. To do this you only have to add the short names of all included projects as a comment. Because of the comment only holing up to 16 characters, the short names should be really short.

To identify the projects after a long period, you can add a long name and a description to each project. Also, you should do this, because the dialog for choosing projects (when entering new data) refers to the long name.

In addition you can decide whether you want to see a statistic for this project or not. You can change this setting whenever you want.

By choosing 'Details' you see a window, where you can enter various kind of costs for a project:

Project details

All projects are stored seperated from the database containing your daily entries. So it is possible to give the project-definition-database to another one, maybe a colleague of yours is using PTimLog and works on the same projects...

If you want to store a project, PTimLog checks the short name. If it contains no character, a message will appear. If you changed the short-name of the project, PTimLog looks for records in your database, which refer to the old-short name. If PTimLog finds one or more, it asks you, if you like to change all records, which contain the old short-name. If you don't want PTimLog to change your records, the new short-name is stored without any other changes.

If you like PTimLog to change all records associated with this project, PTimLog first checks, if this is possible (eg: is the new name longer, there has to be enough space in all comments with this project to store the new one). If this isn't possible, you get an error, otherwise PTimLog makes the changes.


Show Project Statistics

Project statistics

When choosing this function, you see a statistic for every project you choose in the definition module. First you were asked for the date-range for the statistics. Then a window opens and shows all kinds of statistics for the project(s).

By pressing the 'Memo' button a memo with the actual statistic is generated.


Delete records

PTimLog is able to delete records of a choosen date-range automatically. You can select one the following date-ranges:

  1. From first record: You select a date. PTimLog deletes all records up to your choosen date. Because no records exists after deleting for the choosen range, PTimLog deletes all preferences, which are not needed anymore. To get the same values for overtime, holiday and so on, PTimLog calculates new values for the start of the (new) first preferences. After deleting such records, all values should remain un- changed.
  2. A date-range: You select start-and end-date. All records within this range are deleted.
  3. To last record: You select the start-date. From this date, all records are deleted (to the end) You should have a backup of your deleted records, since you maybe need them in the future.


Interesting dates

From time to time (mostly once a year at 1st of January) you like to know the religious and public holidays, in order to add them as records into PTimLog. Up from version 4.55 PTimLog can generate those holidays for you. Go to the main screen and choose the menu interesting dates. The following screen will appear:

Interesting dates

This screen shows the dates, which are known to me. Don't hesitate to tell me more.

You can change to country and the year for the list. The year list is dynamic and gets build the time you open the screen. Everytime you see the past 3 and the 16 future years. The dates are not programmed into PTimLog; they are calculated online. So this screen is actual, even in the year 2050 :-).

You have two options to add the holidays as records into PTimLog. The first option is to add all dates: Just press the 'Create all' button and the will appear in PTimLog. If you just want to create some and not all of them, double tap on that date. After a confirmation, this record will be created.




With selecting the menu 'Register' you can register your copy. Once there, you can input your key, which you received after registering via


Known Bugs

There are no known bugs anymore. If you find any, please report to me via E-mail (address below).


Future plans

I received many suggestions for enhancements. I'm not able to implement all of them. But up to now, all features I like to see, are in this version.

To implement enhancements I need more and more time, since it is a complex program and changes are correlated to many points of algorithms. To include all currently available features into this version, I put a great amount of time into this program.

Nevertheless, if you think of other enhancements, you can mail them, too. Maybe I implement them in a future release, when having enough time.


About me

I write PTimLog in my spare-time, because I only have time for programming after work, so please be patient with bug-fixes or enhancements. If you want to contact me, please write an E-mail to:

I'm trying to answer all mails. If you don't know how to enter your special working model, you can also ask me via E-mail. Finally, I'm very sorry of my english. If there are mistakes, don't restrain yourself mailing me. I'm still learning.........

If you like to spend some time in helping translating PTimLog into other languages, please mail me.



4.55 (01/18/2003): Added: PalmOS 5.0 support - Added: 5-Way navigator-support in TimeStamp - Added: time-factors for weekdays and holidays - Added: Another option to show time - Added: list of oublic and religious holidays for 16 countries - Fixed: go back to luncher, when pressing the navigator button a longer time

4.54 (03/27/2002): Added Unit-size in records

4.51 (05/24/2001): Added: PalmOS 4.0 support - Added: colour and black and white version in one file - Added: time accounts to store overtime - Added: billed - flag for records - Added: enhanced preset screen for new records - Added: show weekday in new dialog - Added: popup-menu in overviews - Added: set lunchbreak, billable, ... with one stroke in overviews - Added: cut and paste in project-dialog - Added: start PTimLog where you left it - Added: Jog-dial support - Added: 'field jumping' support

4.00b3 (11/29/2000): - Added: updated german documentation

4.00b3 (11/22/2000): - Added: updated english documentation

4.00b3 (10/29/2000): - Added: Clientable (allows parallel contracts for different clients) - Added: Graphical analysis for overtime overviews - Added: input of daylight saving times - Added: new record-type: partial sick - Added: new menu design - Added: search within notes - Added: lunchbreak up from 00:05 to 04:00 - Added: new values within overviews - Added: enhancend project definition (plantime) - Added: new record value: billable or not billable - Added: new global preferences - Added: delete all preferences - Fixed: calculation of vacation-days - Fixed: global search within last record - Fixed: checking of repeat input in contracts

4.00b2: not published

4.00b1: not published

3.14 (03/11/2000): - Fixed: update preferences-view after deleting one preferences - Fixed: About-screen in german version - Fixed: TimeStamp (no warning after creating one record with TimeStamp) - Fixed: When creating a new record, change of time doesn't reset lunch-break-length anymore - Fixed: german preferences-dialog

3.14 (03/01/2000): - should now be ready for PalmOS 3.5 - Fixed: wrong vacation-days calculation - Fixed: dimensions of scrollbars - Fixed: week-number in week-overview - Fixed: calculation in day-calculator - Fixed: fixed bug in type 'decrease overtime' - Added: number of working days - Added: unitsize for time-calculations - Added: save column-descriptions for overtviews - Added: jump to next record in record-view with up/down-keys - Changed: documentation in HTML

3.13 (02/06/2000): - Fixed: garbage characters in vacation field - Fixed: fatal exception when deleting records - Fixed: show note-incons in project-view - Fixed: split record in TimeStamp when working overnight - Fixed: German text in TimeStamp - Fixed: wrong display of cut-offs in german version

3.12 (01/30/2000): - Fixed: wrong weekday in overviews - Added: partial vacation day - Added: Show decimal values in PTimLog - Added: Date-calculator - Added: new options in global preferences - Added: alternative start-button in TimeStamp - Added: manual correction/starttime in TimeStamp

3.11 (12/12/99): - Fixed: error while vacation-input - Fixed: converting old start-values - Fixed: wrong calculation min. lunch-breaks - Fixed: german help-text for global-preferences - Fixed: wrong project-names in overviews

3.10 (12/09/99): - Added: Possibility to enter notes for records - Added: german version - Fixed: Find crashes under certain circumstances - PTimLog gets Shareware

3.00 (11/18/1999): - Release Version 3.00

3.00b2 (11/16/1999): - Fixed: some minor bugs

3.00b1 (11/14/1999): - Added: Working times on a daily basis - Added: possibility of entering times in decimal format - Added: automatic deletion of records - Added: - Added: new type for records - Added: safety-mechanism to prevent input of wrong records - Added: Navigate-menu in overviews - Added: use Cutoffs when creating memos - Added: Use Cutoffs in overviews - Added: Startvalues for every contract - Added: Edit-menu for all input-dialogs - Added: new Icons in graphical verview - Ficdd: invalid chunkptr in overviews - Fixed: Cutoffs are not taken into consideration sometimes - Fixed: holidays in the future are taken into consideration - Fixed: Startvalues are ignored in some cases

2.85 (07/08/1999): - Fixed: correct input of lunch-breaks - Fixed: german menue - Fixed: help text for global preferences

2.84 (09/06/1999): - New: Rewrote most parts - Added: faster calculations - Added: easier input of vacations - Added: german version - Added: shows times spent on projects

2.83 (05/27/1999): - Added: manual decrease/increase of overtime possible - Added: preset of new-dialog for choosen date possible - Added: check for overlapping records (new record) - Added: use a registrated Creator ID - Fixed: calculation of holidays when changing contract very often - Fixed: wrong calculation in created memos

2.82 (05/11/1999): - Added: Now it comes with pre-defined preferences for an much easier configuration - Added: Include a TimeStamp-application for an easier tracking of working-time - Added: Create Memo of Project Statistics - Added: Rearranging of projects possible - Fixed: Several bugs

2.81 (05/06/1999): - Fixed: 'Fatal exception' when leaving Preferences-screen

2.80 (05/05/1999): - Fixed: PTimLog is more stable now - Fixed: wrong holiday calculation, when taking holiday at a non working day - Fixed: Correct Calculation for carry-overs - Added: Cut off values can be entered - Added: minor enhancements in user-interface

2.79 (04/28/1999): - Added: When creating a new record, you can choose projects from a list - Added: When changing a project-name, PTimLog can change all associated records - Added: Info-screens for all preferences-screens - Added: Some minor changes of dialogs - Added: Rewrote documentation for preferences-settings - Added: Example in Documentation

2.78 (04/25/1999): - Fixed bug: No endless-loop when deleting the last record - Fixed bug: 'Fatal exception' when selecting no normal working day. Isn't possible now. - Added: Date-format for in-/output is taken from System- Preferences - Added: User can define preset of lunch-break checkbox - Added: Simplify settings of Preferences by including two new buttons to the preferences form - Added: Recalculation when closing global preferences is only executed when auto-recalculation is switched from off to on

2.77 (04/22/1999): - Fixed bug: No 'fatal exception' when using the Pilot-find function with PTimLog installed

2.76 (04/19/1999): - first public release



PTimLog may be distributed as long as this file is included unmodified. In using this software, you understand and agree that this software is provided 'as is' without warranty of any kind. The author do not make any warranties, either expressed or implied, including but not limited to implied warranties of merchantability and fitness for a particular purpose, with respect to this soft- ware. In no event shall the author be liable for any consequential, incidental, or special damages whatsoever (including without limitation, damages for loss of critical data, loss of profits, interruption of business and the like) arising out of the use or inability to use this software.



First of all I would like to thank my beta-tester Klaus Kettner. He let me know bugs and didn't resist in testing, even on big crashes with data lost. Also a great 'thank you' to all of you, who told me not only bugs, but also enhancements. Without telling me, I weren't able to fix the bugs and you wouldn't find some enhancements in this software (or you will find them in next releases).