Preface #

This post was written in 2008. It is still available on my first personal dokuwiki 1.

I convert the old wiki in Markdown format, for the future. Google signals me by email that my very old Dokuwiki don't follow responsive design. The french web-provider FREE do not authorize wikis any more on their sites. Then i close logins and i won't migrate the wiki. Maybe the site will be vanished in some days (months, years).

Regards

Eric


Introduction #

Early adept of handheld from Palm Corporation , i am very happy with my last (and now old) handheld: a Palm Tx.

But i look for a better integrated system with GPS, bluetooth2, large screen, like latest smartphones. Actual devices from Palm™ don't fill my criteria. Oups.

Ready to switch to a concurrent?

Not really, i use an application on a daily basis. Its name is Datashield from Ultrasoft. A great product! But it seems that this application is built only on PalmOS system.

Thus, i searched an alternative for Datashield. Quickly, i found SplashID. Similar to Datashield, splashID works on multiple devices: PALM, Symbian, iPhone, windows CE/pocket/mobile, etc.

I don't want to write again my three hundred of personal records on the new system. A first search shows that the Datashield desktop could export data in a file with XML format. Great! After that i seeked a converter to import my xml-file (from Datashield desktop) to SplashID desktop. I still search. Huh.

At last, i decided to build a quick and dirty script to do the job.

With hope, that could be usefull for anyone.

Regards Eric HAMON

Limitations

  • Scripts are only parts of a one-way converter. Datashield to SplashID. no less, no more.
  • I didn't respect 'design pattern'. Scripts work well but lack of readiness. Blame me and delete all files after the migration of your data.
  • I am Perl addict for a long time. This project is my first use of the ruby language.
  • Datashield and SplashID desktops are Windows programs. Thus the converter 'Datashield2SplashID' runs on Windows too. Ruby scripts are simple and don't use windows API. They run well on linux box (tested on ubuntu 8.04), but i have not test 'Datashield and SplashId desktops' on Linux-box. Maybe on wine.

Steps

Install sqlite3 library

  • Go to SQLite downloads page and grab the sqlitedll-3-xx.zip archive.
  • Extract it to C: .

Install your Ruby environnement

What? You haven't tried yet ruby? It's a kidding joke.

Update your ruby environment (windows only)

  • Download RubyGem and install it. (RubyGem howto)
  • gem uninstall hpricot
  • gem update gem -v

Add ruby libraries

  • open a command terminal (alias 'cmd')
gem install sqlite3-ruby --version=1.2.2
gem install xml-simple

Download 'Datashield Desktop'

If you still not use the 'Datashield Desktop', it's time to download and install this application. UltraSoft website

More instructions are available on the Ultrasoft or Palm web-pages.

Datashield Desktop is a commercial product limited in time 30-day trial. A dozen of minutes is enough to our migration.

Synchronization of datashield data

First! You must synchronize your Palm data with your Desktop.

Export your personal data from 'Datashield Desktop'

Create a working directory for the migration

open a command terminal (alias 'cmd') mkdir \dataconvert cd \dataconvert

Export your personnal data from 'Datashield Desktop'

  • Run 'Datashield desktop'
  • Go to the menu 'File'
  • click on 'Export...'.
  • Save as 'Datashield.xml' in the directory created before.

datashield-screenshot-0.png

Uncheck 'Encrypt exported data' !!!

That's all.

  • Close the program. You don't need anymore 'Datashield desktop'.

Download and run ruby scripts

Download readIt.rb and writeIt.rb to C: .

readIt.rb import the xml-exportfile from dataShield to a sqlite3 database.

writeIt.rb create a file to import with SplashId desktop software from the sqlite3 database.

Run the machina

  • open a command terminal (alias 'cmd')
ruby readit.rb

A sqlite datafile named 'Datashield.db3' will be created. That's all.

  • in the same terminal session, run
ruby writeit.rb

Two files are created. 1. splashId-listetypes.txt => fieldnames of categories. 2. splashId-ego.csv => a csv-file containing your precious data.

Download software 'SplashID Desktop'

See SplashData to download the software suited to your device.

  • Install 'SplashID Desktop' on your PC.

Final data import

  • Run 'SplashId Desktop'.

  • Go to the menu 'File', 'Import' and click on 'CSV...'.

splashid-screenshot-csv.png

  • Select and confirm the file '-ego.csv'

Create categories

If you double-click a record, you notice that all of Fieldname are named 'Field1' to 'Field9'.

'SplashId Desktop' don't care of that. You have to rename manually, one by one, all fieldnames of types.

read my post on splashdata forum.

To do it, follow those steps.

  • Edit or (better) print the file 'splashId-listetypes.txt'. (This file only contains fieldnames of type records really used in your data.

  • Click on combo-box named 'Type' splashid-screenshot-0.jpg

  • Select the last item 'Edit types' splashid-screenshot-1.jpg
  • Edit each imported records type splashid-screenshot-2.jpg

  • Sample Sample

Conclusion

Your personnal data are now fully imported and be ready to give you satisfaction on your handheld. 'Datashield2SplashID' job is done.

If you use my scripts, send-me an email. I am curious to know, how many people migrate from datashield to splashId.

Contacts

Author: Eric HAMON eric@ehamon.fr

Support

Well. Feel free to alter scripts. I don't use them anymore. You know why. 8-)


Published

Category

ruby

Contact