Datashield to SplashID converter

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:\Windows.

Install your Ruby environnement

download Ruby

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

RubyInstaller

(see details on ruby-lang )

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' and click on 'Export…'. Save as 'Datashield.xml' in the directory created before.

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 '\dataconvert'.

Date script View source Comments
2008-10-17 readit.rb readit.rb import the xml-exportfile from dataShield to a sqlite3 database.
2008-10-17 writeit.rb writeit.rb create a file to import with SplashId desktop software from the sqlite3 database.

Run the machina

open a command terminal (alias 'cmd')

cd \dataconvert
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.
splashId-listetypes.txt ⇒ fieldnames of categories.
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…'.

Select and confirm the file '\dataconvert\splashId-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.

Instructions screenshot
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 splashid-screenshot-3.jpg

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

ehamon@free.fr

Support

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

 
datashield2splashid.txt · Last modified: 2010/01/04 14:22 by ehamon
 
Except where otherwise noted, content on this wiki is licensed under the following license:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki