Migrating a database to a PalmOS application


The general technique is to use the import capability of the Palm Desktop software. Standard techniques are used to create an ASCII file containing the data to be migrated, with individual data items separated by tab characters. An arbitrary correspondance between import file field numbers and Palm Desktop field names can be specified via a drag-and-drop interface at import time. The (fixed) correspondance between Palm Desktop field names and Palm OS application field names is documented in the PDF manual copied to the hard disk during the initial installation of the Palm Desktop. Thus the actual order of the data items is irrelevant, and it is possible to work backwards from the desired PalmOS application field name to the (fixed) corresponding Palm Desktop field name, and then specify the appropriate mapping from the input data file.


The techniques described here were developed on a HandSpring Visor Deluxe PDA and using the version of Palm Desktop distributed by HandSpring. The Visor uses an unalterable ROM containing Palm OS version 3.1 and HandSpring does make some changes to the distributed Desktop software. The desktop machine used was a Macintosh, so descriptions of menus and windows track that specific desktop system. It is believed that the techniques described here should be generally applicable to all situations, but it should be noted that some adjustment may be needed for other devices or for later versions of the PalmOS system.

Case study: department telephone list

A specific request was made to migrate the Philosophy Department mailing list to the Palm OS Address application.

Producing the ASCII file

The most difficult part of satisfying this request was in preparation of the data, as the source document was not a database, per se, but instead a MicroSoft Word document formatted to produce an attractive human-readable document. The source text of the MicroSoft Word document was extracted, and much extranious formatting information (such as explicit page breaks) was deleted. Much additional manual markup work was also required. For example, home mailing addresses were explicitly marked-up as street, city, state, and zip code fields.

Various special situations arise in academia. For example, some faculty members may be on sabbatical or may be visiting other institutions, thus there may be both temporary and permanent office numbers, email addresses, and telephone numbers. This particular address list included spouse names. Members of the client community were consulted in determining the mappings between the database data items and the Address application field names.

Importing the ASCII file

When the ASCII file is accessable from the machine hosting the Palm Desktop software, the "Import" command can be given from the "File" menu. The file to be read is selected in the usual manner. Then a window is displayed with Palm Desktop field names on the left and example field values from the first input file record on the right. The "Fields" dropdown should be set to the application being loaded, and the "Delimiters" dropdown should be set to "Tab & Return". The two "Scan Data" buttons can be used to view other representative records from the input file. When the desired correspondance has been specified, the OK button causes the data to be imported into the Palm Desktop. The database can then be synched into a PalmOS device, and transfered to other devices by infrared.

Beaming Categories

If an item is beamed into a PalmOS device, and its category is already present in that device, the item will be correctly categorized as it is stored. However, if the category is not already present on the receiving device, the new category is NOT created. Instead, the beamed item will be recategorized into the "unfiled" category. While this situation can be prevented by making sure the target device already has all categories in question, it is also possible, in the Palm Desktop, to mass-select all the misfiled items and refile them all at once, which is much less painful than refiling them one by one on the device. The broken data should be synched up to a Palm Desktop. The misfiled items should then all be selected (using shift-click). Then the "Categories" command from the "Edit" menu can be used to reclassify the selected items in one swell foop. The correctly reclassified items can then be synched down to the device.