O'Reilly logo

Palm OS Programming, 2nd Edition by Neil Rhodes, Julie McKeehan

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Moving Data to the Handheld

As we discussed earlier, there are several different ways to move data around during a synchronization. Let’s look at what is involved in moving data from the desktop to the handheld. This is commonly done with databases that are updated exclusively on the desktop and are routinely moved to handhelds where they aren’t modified, but may also occur when the user chooses “Desktop overwrites handheld” in the HotSync Settings dialog box (see Figure 14-12).

You need to create the database if it doesn’t already exist. You should delete any existing records before moving the ones from the desktop because you won’t want the old ones; all you’ll want are the newly moved ones.

Deleting Existing Records

There are a few different routines from which to choose for removing records from the handheld:

SyncDeleteRec

Removes one specific record

SyncPurgeAllRecs

Removes all records from a database

SyncPurgeAllRecsInCategory

Removes all records from the specified category

SyncPurgeDeletedRecs

Removes all records that have been marked as deleted or archived

For no terribly good reason, one API uses the term “delete,” while others use “purge.” All of them remove records (completely) from the database. In our particular case, SyncPurgeAllRecs is the call we want to use.

Writing Records

Once you have a nice, empty database, you can fill it up with fresh records from the desktop. You can add or replace records with the Sync Manager call, SyncWriteRec:

long SyncWriteRec(CRawRecordInfo ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required