This sounds like a great idea - allowing the user to work offline with effectively the same application as the online version if I understand what they are doing correctly. Then syncing of the data once online again. The key downside of using online apps is: what do you do when you're offline and need to work. Could this be the beginning of the solution?