ContactX
Contacts book searcher


PURPOSE
ContactX provides easy searching through contacts databases, while creating
and maintaining databases and backup files.

SETUP
ContactX runs under Macro5,  Pascal Nicolas.
Install CNTOPX.SIS and copy ContactX.opo to the Macros folder. Create one or
more new contacts files, e.g. by converting data type files to contacts
(using DataContact,  Pascal Nicolas), and place these files in a folder on C
or D disk. This will be the search folder. If you don't have any new files
then copy the supplied "Developers.cdb" for demonstration.
On first run the program will prompt you to indicate the search folder. The
existing Contacts dbase will be saved to this folder as "My contacts.cdb"; if
a file with this name already exists it will be replaced.
Optionally check the 'Keep backups' box, hit OK and select a folder for
storage of backup files (this can be the same as the search folder).
A directory C:\System\Apps\ContactX\ will be created, including a
ContactX.ini file. This concludes the initialisation.

USAGE
On running ContactX a text entry box is presented. If you wish to change data
search folder or backup folder press Files (Ctrl+F). Enter any text referring
to first name, last name or company name and hit OK, or alternatively enter a
text string and choose Ctrl+A for search in all fields.
If matching contacts are found in only one database, this database is copied
to Contacts and the search result is presented. If a match appears in more
than one file, you will be prompted to select the preferred database. Hit Esc
to search again.
A search with no entry text allows for selecting any .cdb file in the search
folder.
The Contacts database, if exchanged and if modified, will be stored to the
data search folder under its representative name, replacing the earlier
version or moving it to the backup folder if opted. Please note that backups
may be overwritten by files with identical names from different source
folders.
In the file selector dialog, choose Ctrl+R to restore earlier versions of the
selected database. If there are backups you get more restore options.
If the loaded database cannot be closed when ContactX wants to move it, then
the message "Contacts in use" is displayed and ContactX quits. The usual
reason is that the Contacts database is being called by one or more clients
other than the Contacts application. The only other client in the 5mx ROM is
Messaging (the Email "Address" menu). In this case detach (close) all clients
and rerun ContactX.
The "All text" search function is different from the option in Contacts, and
more powerful. Besides scanning name fields as in the normal search function,
it checks the combined presence of text strings in all fields and searches
through the loaded database. Use it if you have scattered information on the
aimed contact, entering * to separate text that may appear in different
fields (such as "john*london*@").

CONTACTS FILE EXPORT
As of version 2.90, ContactX features the option to export matching contacts
to a new contacts file. This allows to:
 view only the matching contacts in the Contacts window, which often is
impossible whithin the existing file(s);
 import a list of selected contacts into other applications like Word, Data
or spreadsheets (via Malcolm Bryant's freeware "C2F" program).
The export feature is always invoked by choosing the "All text" option, if a
search string is entered which contains an * preceded by text (such as
"John*London" or "John*"). The new contacts file will be written to the
search folder, where it will be available for further manipulation just like
the existing files.

HISTORY
Version	Bytes	Date	Modifications
2.90	12145	18 feb 2000		matching contacts exported to new database
				general control and protection enhancements
				unique match searching in loaded Contacts.cdb
				clipboard not affected if no search text
2.80	7203	20 jan 2000		'About' added
				backup control added
				all text search refined
2.65	6848	18 dec 1999		fully language independent
2.62	6773	03 dec 1999		book selector width restrained
2.52	6773	30 oct 1999		unique match forwarding in all text search
2.50	6510	23 oct 1999		multiple field search added in all text search
2.42	6261	21 oct 1999		long names allowed
				proper comma handling in book selector
				tabs treated as spaces in name search
2.40	5948	11 oct 1999		code synchronised with ContactW 1.20
				book selector changed
				search string ends up in clipboard
				boosted search for single words
2.30	6073	07 oct 1999		Contacts.cdb on D disk enabled
2.20	5989	04 oct 1999		fixed flaw in search routine
2.10	5936	02 oct 1999		name search algorithm upgraded
				initiation facilitated
				not released
2.00	5049	30 sep 1999		searches for text within contacts databases
				manages/compresses contacts files
				optionally maintains/restores backups
				not released
1.10	1731	22 sep 1999		code refined; no operational changes
				not released
1.00	1698	10 sep 1999		first public release
				added 'about' and directions at initial startup
1.00b1	1475	03 sep 1999		first beta release

COPYRIGHT
All rights reserved by the author.

DISCLAIMER
The author waives responsibility for any adverse consequence of using this
program;
running it is allowed under the condition that the user accepts the full risk
of use.

CREDITS
To Pascal Nicolas for Macro5 and to Richard Smedley for SafeOPL.

KNOWN ISSUES
ContactX was written and tested on the UK 5mx.
All known issues originate from the Contact.opx library, version 1.00. It is
yet unknown when EPOC will have the opx debugged.
 The contents of the "Job title" field are ignored in searches.
 When exporting, fields in contacts that were imported from other vCard
applications may not be recognised. These will be passed as " failed ",
where the  has character code 150. Known failures involve address fields,
following synchronisation with MS Outlook and MS Schedule. Set the sync path
to a fixed database in the search folder to avoid accidental mixing with
other contacts that may be momentarily loaded.
 Per contact, no more than two fields with contents larger than 255
characters can be written to a new contacts file; the remaining will be
passed as " failed ".

FEEDBACK
Please mail your findings to:		Frans Franken
				ContactX@franken.demon.nl
Latest version and more at:		http://www.franken.demon.nl
