Ich stehe gerade vor einem ähnlichen Problem. Wir haben eine Web-Anwendung für den Desktop-Browser, entwickelt mit Delphi und UniGui, läuft als
ISAPI-
DLL auf IIS und Firebird-Datenbank. Nun soll ein kleiner Teil daraus auf Smartphones genutzt werden; am einfachsten wäre es, ein Paar neue Masken an die Größe von Smartphones anzupassen und fertig. Dies scheitert aber daran, dass ich im konkreten Fall nicht sicherstellen kann, dass dauerhaft eine (ordentliche) Internetverbindung besteht.
Wir haben lange überlegt und uns nun dazu entschieden als Erstes folgendes zu versuchen/testen: Eine mobile Web-App mittels HTML5/CSS/Javascript, die den ApplicationCache und localStorage (oder IndexedDB) nutzt, um nach dem ersten Aufruf offline zu funktionieren. Die Daten müssen dann natürlich regelmäßig (wenn Internetverbindung vorhanden) mit dem Server synchronisiert werden.