multiple device synchronization policy?

Discussion of HanDBase running on Windows Mobile Classic and Professional (formerly Pocket PC) devices and smartphones and syncing with a desktop computer.

multiple device synchronization policy?

Postby Avi » Mon Jul 12, 2010 10:50 am

Howdy all,

I have licenses for HDB Professional for Windows desktop, Palm and for Windows Mobile Professional. I'm currently using it only on my WM device (HTC Advantage 7510 running WM 6.1) and on my desktop computer (XP SP2), but may soon have to start using it on a second device held by an employee.

I am using the Sync Exchange utility with the WM device so that my databases can reside on it's SSD, instead of main memory - the SSD looks like a storage card to HanDBase. I do this by opening the Sync Exchange Options application, adding all my databases to the list from the subdirectory in which they reside on the desktop, and then, choosing each database in turn, click on "Users", add my device to the list on the right of Selected users, and check the "On storage card" option. So far, so good -- everything synchronizes properly. I don't know of another way to allow HanDBase databases to reside on a storage card and get synchronized to the desktop.

I have some questions about what will happen when I start allowing a second device to add data to my databases:

1. Several of my databases are connected to each other via Link/Linked associations, where the linking field is a Unique field. Is this a problem when more than one handheld device is creating new data for the databases? If so, what must I do to fix this? There's quite a few databases, quite a few links, and each database has a lot of records, too.

2. I would prefer that the employee only be able to add records to my master databases from his handheld, and not get my older records, or perhaps even my current ones, in his device - in other words, he can gather and add data, but cannot access data other than his own. He really doesn't even need to have physical access to my desktop computer (on which everything resides) for synchronizing his device, he can do that to his own desktop/laptop. It seems to me an adequate solution to this would be for him to email me daily copies of all his databases, and I can then do a file/merge operation through HanDBase on my desktop. This gives me manual control, but requires daily intervention. Is there another way to do it, like through Sync Exchange? Is the answer to this dependent on the platform his device is running, and if so, what platform should I chose for him? What if the device he ends up with doesn't have a storage card, and he only uses internal memory?

He will have access to the internet via the local LAN with his laptop, and I could add him to a Windows workgroup and give him access to a shared folder on my desktop, if that simplifies things. Or can he do a one-way sync to the databases in my desktop over the LAN?

Is there a reason to prefer one platform over another for his device to ease this process ( I realize this may necessitate me purchasing another license if the second device isn't an old Palm OS device)? It really doesn't even need to be a phone, just a PDA - I don't even have a SIM card in my Advantage - I just use it like a palmtop computer and connect to the outside world via WiFi.

TIA for your help!
-avi
Avi
 
Posts: 69
Joined: Thu Jun 04, 2009 1:36 pm

Re: multiple device synchronization policy?

Postby dhaupert » Mon Jul 12, 2010 11:12 am

Hi Avi,

Thanks for your post and your questions. Link/Linked fields generate a globally unique id for their values, as they are designed for multi-user environments like this. So you don't have to worry that his device will come up with the same unique values for keys in those fields. The exceptions will be the unique field type which is really only unique on one device, but it doesn't sound like you're using that field type!

There are sync modes in Sync Exchange to support what you're after. One is called one way sync handheld to desktop. In that mode, his new records will be added to your master, and your records will not be transferred to him. That said, in this mode, if he deletes one of the existing records, that delete will be propagated over to you as well which may be a problem depending on how things are set up. The one mode that we're lacking that I have found some users desire is like a data collect mode- where new records are added, but deletes are not propagated to your master table. I hope to one day add this mode, but if you do need that, the Merge records feature in the desktop is the way to go.

I don't believe it matters what platform you choose, though if you choose the same exact platform, you can easily set up sync exchange devices. When you start mixing different devices you have different config screens to set things up and obviously have another device that you'll need to understand. My one recommendation is not to choose a BlackBerry for his device- our HanDBase implementation is weakest there!

Lastly, regardless of what platform he uses, you would need to purchase a license for him for the new device. Our license agreement only grants you a single handheld device and a single desktop for the copy you already purchased. On the flip side, if he's going to sync to your computer only and not one of his own, you can buy the cheapest version of HanDBase and not the professional that comes with Sync Exchange, since you're basically just needing the device license.

Hope this helps.
dhaupert
 
Posts: 4111
Joined: Tue May 26, 2009 11:51 am

Re: multiple device synchronization policy?

Postby Avi » Mon Jul 12, 2010 12:47 pm

Thanks for the quick reply!

(1) You wrote:
"The exceptions will be the unique field type which is really only unique on one device, but it doesn't sound like you're using that field type!"
Unfortunately, I am using the Unique field.... in my central, parent database("agriculture") , I have a field called, simply, "#" (the cross-hatch symbol) of type "Unique". I have links to each worker's time card, a database with their name, and in the worker's database, I have a linked field also called "#". Back in the "agriculture" database, in the definitions for the linking field(who's name is the worker's name), "show value from" is set to "#". But am I just confusing the issue by using the same name for all these different fields, or is it really a problem? I may have made a mess ...

(2)You wrote:
"There are sync modes in Sync Exchange to support what you're after. One is called one way sync handheld to desktop. In that mode, his new records will be added to your master, and your records will not be transferred to him."
But from looking at sync exchange, that appears to be a global setting for ALL the handhelds syncing to a given desktop -- I want to be able to walk around with ALL my data in my pocket, but want him to only feed data to my desktop and from there on to my handheld. Is there a way to make each handheld have it's own policy with each database?

(3) You wrote:
"The one mode that we're lacking that I have found some users desire is like a data collect mode- where new records are added, but deletes are not propagated to your master table. I hope to one day add this mode, but if you do need that, the Merge records feature in the desktop is the way to go."
So I gather that the simplest, or perhaps only way to get a safe, one-way data input from him remotely (i.e. he doesn't physically plug a USB cable into my desktop) is to somehow receive the file from him and use the merge function in the desktop app? And then, if he later sends me another version of the database with newer records but from which he has inadvertently removed older records, they will also be removed from my master database on my desktop? Not so cool ...

I can generalize this request to: please provide a means for locking chosen records, or even certain fields within a record, once they have been created -- I've found this lacking in, for example, date fields when recording invoice data, where one can inadvertently alter the date later on, if not careful with which type of date field it is (date record added vs current date, for example), which can really bollux things up, particularly if you only sit down once a week to type in all that week's invoices.

(4) You wrote:
"Lastly, regardless of what platform he uses, you would need to purchase a license for him for the new device. Our license agreement only grants you a single handheld device and a single desktop for the copy you already purchased. On the flip side, if he's going to sync to your computer only and not one of his own, you can buy the cheapest version of HanDBase and not the professional that comes with Sync Exchange, since you're basically just needing the device license."
I used to use HanDbase on Palm (been with y'all since 2.x) and then purchased an upgrade (or was it considered a cross-grade?) to HDB Pro on WM. So am I still licensed on Palm, if I get him, for example, a used Palm OS device from ebay?

BTW, I know I used to sync my Tungsten T3 to my desktop using a WiFi card plugged into the T3's slot, which was pretty cool at the time.
Avi
 
Posts: 69
Joined: Thu Jun 04, 2009 1:36 pm

Re: multiple device synchronization policy?

Postby dhaupert » Mon Jul 12, 2010 3:58 pm

Hi again,

Thanks for the reply. To respond to your questions:

1. It doesn't matter if fields names are the same to us (though it does matter if you're syncing to other database apps like Access which would never go for that sort of thing!). The main issue is that the unique field number will not be unique if you let records be created on multiple devices. Since the Link field keeps it's own internal number, there is really no need internally for you to have such a field, unless you wanted to auto-generate a customer number. In that case, I'd say to set it to a text field and have each of you come up with a unique number, like the customer's phone number.

2. You can create a sync exchange entry for each user that points to the same database. So if user A is supposed to have a certain set of sync settings, you'd create an entry, point to the database file and then set the modes. Then do the same for the next user with his/her own settings.

3. If you did an upgrade from Palm to Windows Mobile, then indeed you'd have a copy of both in your download/license. The Crossgrade is not the same though- that's when you say, I am no longer needing the old Palm version, so switch my license to the Windows Mobile. At that point, you're no longer a licensed Palm user. We only recently started doing upgrades from one platform to another, since more and more people are keeping multiple platforms around. So in your case the way to determine which you did when you switched, is to log in to your account on our site:

http://www.ddhsoftware.com/download

And see if the Palm version is still there. If it is, you're welcome to use that license! Otherwise, you'd have to purchase a license for him/her.

Hope this helps!
dhaupert
 
Posts: 4111
Joined: Tue May 26, 2009 11:51 am


Return to HanDBase for Windows Mobile Classic and Professional

Who is online

Users browsing this forum: No registered users and 1 guest

cron