cm4p
Home | Download | ChangeLog

Welcome to cm4p (Correspondence manager for Palm OS®) homepage. cm4p is a Palm OS® application to store, manage & easily retrieve all your incoming and outgoing correspondence. 

Index
    Installation & first run
    Program startup
    Main menu
    What does these 'Tables' are?
    Configuring tables
    Browsing correspondence's database
    Searching correspondence's database
    Exporting filtered reference numbers
    Removing the evaluation lock (for demonstration purposes only)

cm4p was entirely written on a PalmIIIx unit using the PocketC compiler and the CControls user interface library.
Any comment is appreciated; please feel free to send it to my e-mail.



 


[Index]

Installation & first run

The program is distribuited as a ZIP file containing program files. To install simply expand the .ZIP into a temporary directory and install PocketC.prc, cm4p.pdb and Cm4p.prc on your Palm using your preferred procedure. To run the program simply tap the cm4p icon, shown on the left. The program will automatically create the databases needed from the application to run. Please note that all user databases are automatically saved on your PC when you HotSync.

[Index]

Program startup

Depending on the hardware capabilities of your Palm, cm4p automatically switch to run in monochrome or in color mode. A brief splash-screen like this one is shown while the program loads in memory some internal tables and starts the execution. A completion bar at bottom of form reminds you to wait a little time.

[Index]

Main menu'

This is Cm4P main menu'. Here you'll find two buttons, "Settings" and "Browse records". 
Tapping "Settings" you can set up the program tables (Senders,Document Types, Virtual Folders) used to store the standard properties common to all your correspondence. 
Tapping "Browse records" you can add, edit, search records into the correspondence's database.

[Index]

What does these 'Tables' are?


 

Tables are useful to simplify searching within Correspondence's database; each table represents a property of letters and correspondence. I think that main common properties of correspondence are Sender, Document Type and Logical Folders.
You know that each document comes from a sender; so you will store all usual senders (such as Banks, Telephone Carriers, Companies you're working with, Hospitals, Brokers and so on) in the Senders table. When recording a new document you will simply choose the correct sender from the drop-down control in the "New document" form (we will discuss this form later). 
So again for Document Type: this table lists the most common document types (letters, faxes, statements of account, telephone bills...) you use. With this property it should be easier and faster to search only for, e.g., 'statement of accounts' received from our bank skipping all other documents coming from that bank. 
Virtual Folders allows to set-up 'logical folders' to store all documents involved in a particular argument. Setting up a Virtual Folder called "New York's apartment" and another called "Atlanta's apartment" let to separate the correspondence regarding the two houses also when documents are stored with the same properties for Senders and DocTypes. (e.g., bills from the same Telephone Carrier for each apartment). Virtual Folder is the more powerful property because it depends only from your ability to logically organize your files. 

[Index]

Configuring tables

cm4p uses tables to store all standard properties of your correspondence. Things as"usual senders", "common document types" (love letters, faxes, statements of account, bills and so on) and "logical folders" are stored into three tables that you can set up as shown here. 
Each table's element is composed by an alphanumeric code and a description. The codes are used in the program to set the properties of the correspondence's database records. Each table is shown in a browse like this one; three buttons allow to insert a new element, edit an element, or search within elements description to find a given string.

A drop-down control on top of form allow to switch between tables. Please note that the content of each table is saved when you switch to another table. When inserting a new record you will be prompted to set both code (max three characters) and description. When editing an element you will be prompted to edit only the description. Please remember that table's elements can't be deleted.

The Search function can be useful when a lot of elements are stored in a table and you're searching for description substring. In this case the Search function can show the elements that meets your searching requirements. Founded elements are shown with their ordinal number and with a brief description (in this example we were searching for the string "paolo"; please note that the search acts only on the description field and is case-insensitive).

Tapping Quit causes the sorting of elements of each table. Elements are sorted alphabetically considering each element code; an "UNF (Unfiled)" element is added and set to the first row of each table after the sort. At the end of the sort process all tables are reloaded in memory. The Quit button's caption changes during sorting, reindexing and reloading and a completion bar at bottom of form reminds you to wait a little time.

[Index]

Browsing correspondence's database

This is cm4p's main form. It's splitted in four 'zones': insertion date at top of form, main browse and notes in the middle and action buttons at bottom of form. 
The main browse lists database's records with their properties (record number, properties codes, brief record subject). You can scroll records up and down tapping on the arrows on the right side of the table (top & bottom). Tapping a row will highlight that record and will cause the automatic update of all form's fields such as record's insertion date, on top of form, and notes at bottom of form. Please note that records are stored in reverse order, so that you can reach the newly inserted records on top of browse. 
On bottom of form you'll find the buttons used to add, edit, find, go to records in the database. The meaning of each button will be discussed hereafter. 

When you need to add a new record simply tap onto the "New" button. This form will appear: you will be prompted to set-up all properties of the document. Please note that some fields (Sender,DocumentType and Virtual Folder) are set using drop-down controls listing the values of the tables set at configuration time; the drop-down shows both code and description in a compressed form. Some other fields, such as Subject and Notes, are instead normal string fields that you can edit and change. A standard 'Palm' date selector pops up when you tap onto Doc's Date field.

When all document's properties are set the form should look like this one. 
If all is OK you can tap 'Ok' to insert the new record or 'Cancel' to simply go back without changes. 

Tapping 'Ok' causes the insertion of the record. Please note that any time you add or modify a record the backup-tag indicator of the database is changed, so that your work will be saved on your PC at next Hotsync. 
The program assigns a reference number to the document. Now you can simply write down that number on the document and file it in progressive order. 
This new record will appear on top of the main browse since it's the latest added to the database. 

Tapping 'Edit' in the main browse causes this form to appear. It's very much alike the insertion form and with it you can edit all record's properties (except the progressive reference number and the insertion date, that will remain unchanged). 
Please note that when you tap on 'Subject' or 'Notes' field a brief pop-up text box will appear: this text-box is used both to insert or edit these fields. Only a substring of fields is visible in the form (followed with dots) if its length is greater than the field. 
Tapping 'Ok' will apply the changes, 'Cancel' goes back with no action.

The 'GoTo' function allows to retrieve records using their reference number as index. Simply type the reference number in this dialog to obtain a detailed view of that record, as in 'Edit' form. This function maybe useful to verify lists of reference numbers obtained with the 'Search' -> 'Export' functions, as detailed hereafter. 

[Index]

Searching correspondence's database

Since records are stored with their properties, at search-time you will simply tell the application what to search for to obtain a list of the reference numbers matching your request. 
Using this form it's possible to set up database filter criterion. Each property you set applies on previous, so that the example shown here extracts only all "EC" Document Types for the "IBS" Sender (in other words, only 'statements of account' of 'SanPaolo Bank'). 
You can choose to set none or all the properties in the form; please note that Subject and Notes are treated as substrings (case insensitive!) and Doc's Date does'nt take care of the day, evaluating only year and month.

While searching within the database the program shows a completion bar. Please note that depending on the number of records and parameters given to the filter the searching process could take a lot of time.

At the end of the search process the program tells the number of matching records founded. When tapping 'Ok' the program shows a browse containing only the matching records.

The filtered table contains only the records that matched the given filter; in this example I choose to show only the records with "IBS" as Sender (it's my Bank). 
You can browse the table using the standard arrows and show the details of any record tappig the Details button, as usual.

[Index]

Exporting filtered reference numbers

Tapping 'Export list' causes the export of a memo file containing the list of records matching the given filter. 
When the export is done the program prompts you with a dialog, like this one, containing the name of the generated memo within squared brackets. Generated memo's name is unique because it contains also current date & time. 
In any memo you will also find a brief 'filter criterion' description to remind you which were the applied criteria.

[Index]

Removing  the evaluation lock

cm4p implements a menu' system that you can use to get informations on the program and remove the evaluation lock. 
Tapping the "menu' silkbutton" you will gain access to the forms About (getting informations) and Register (registering the program).

Tapping About you will be prompted with this form. It will remind you to register or, if you have become an appreciated user, it will thank you. 
Tapping the button Say will show some informations regarding the build of the program, useful to better inspect on a problem; in this case, please send me those strings when asking for problems, thank you.

cm4p was distribuited as shareware and comes to freeware on May 2005. Feel free to use it as long as you need. 


[Index]





Hosted by www.Geocities.ws

1