Client/Server development

This forum is for application developers who are integrating HanDBase into their solutions via the HanDBase API (HAPI) or other means. It's also a great place to discuss runtime development.

Client/Server development

Postby vick » Wed Aug 01, 2012 12:33 pm

Hello all!
Sorry if my questions may sound dumb, but I was unable to find all necessary information, so I'd rather ask to get a definite answer.

Here is my situation. For the last 2.5 years I was developing a rather large and complicated system - a client/server application for Windows that tracks orders, production, processing, shipping, etc. of milling tools. All of the data resides on a remote MySQL server, and about 20-30 users with desktop and laptop PCs have access to it using the client Windows software I developed and ODBC connections. Some users also use a web interface to access the data. Recently I got a request to create a "light" version of the application to run on iPad, so salespeople could carry their iPads on the road and place orders while at the client, not having to get to the office first. In other words, they need an iPad client application that can interact with the MySQL server and perform simple queries and actions such as retrieving data, editing, and saving (synchronizing). So I guess by question is this: will HanDBase let me develop such a client program that will run on iPad?

Another question - if I develop the program on my Windows PC, how hard will it be to re-adapt it for iPad? Will it require doing double work or is there some way of "converting" it?

Thanks in advance!
Posts: 1
Joined: Wed Aug 01, 2012 12:21 pm

Re: Client/Server development

Postby dhaupert » Mon Aug 06, 2012 10:51 am

Hi there,

Thanks for your interest. HanDBase is designed to have the database stored right on the device along with the program. And the data is stored in our own format (though it can be converted from other formats such as SQL using our tools/convertors/conduits). In other words, the data has to reside locally on each iPad using it. This is a very different paradigm than what you're using now where all the clients are basically front ends querying and modifying the same database. So it may not be a fit for your needs.

That said, there is a reason we went with the local storage model and there are some reasons to consider it. When you're requiring web access for your clients, you run into all sorts of connectivity issues that mean zero access when in certain areas or situations. A local database uses no internet requirement and thus saves on usage charges and gives you always available access to the data, not to mention the speed advantages thereof.

Of course, there are disadvantages- if all the users want to have access to the same data, you then have to synchronize the changes together to make for an up to date merged file. This is where a client/server model is superior as it happens automatically. In HanDBase and other local storage database solutions, the data has to be merged via various ways (emailing files and merging them, using a conduit which syncs them to a desktop system, sending them to a cloud storage system like DropBox, etc.)

There is a best of both worlds scenario which is local storage with an online sync to a central location. This is kind of the elusive goal that most developers and customers alike are seeking to attain, and we are no exception. Hopefully in the future we can serve this need as we are developing something just for this! Nothing to announce just yet, but we are definitely hoping to fill this need in the months and years to come.
Posts: 4113
Joined: Tue May 26, 2009 11:51 am

Return to HanDBase - Developers

Who is online

Users browsing this forum: No registered users and 2 guests