synchronizing two Windows-based "desktops"?

Discuss the HanDBase for Windows Desktop program, conduits, and add-ons.

synchronizing two Windows-based "desktops"?

Postby Avi » Wed Feb 18, 2015 1:58 am

Howdy folks,
Well, I went done gone and did it! In order to allow "portable" (more or less) HanDBase use with non-European characters, I bought an 8" Windows 8.1 tablet (Asus VivoTab Note 8 - I chose this because it has a Wacom digitizer and built-in stylus - it's really too large for me, but the digitizer swayed me). Also got a case with a bluetooth keyboard. This setup does not really allow handheld input, unless I ditch the keyboard and use the on-screen keyboard, which for HanDBase may be adequate most of the time.

Anyways, my goal is to be able to synchronize databases between this device and my office desktop, running HanDBase Pro for Windows Professional, which synchronizes with my handheld HTC Advantage (being phased out due to hardware wearing out), regardless of whether changes were made in either or both copies of the database.

SO, what version of HanDBase should I buy for this device, and how will synchronizing between the Windows 8.1 and Windows XP computers be accomplished? I want, if possible, to be able to integrate changes to a given database made on either platform.

BTW, connections to the outside world from the Asus are via WIFI, and, if necessary, there's a microUSB port. I have also successfully set up my cellphone to allow internet connections from the field, since wifi isn't available there, and can remotely control the XP desktop using Teamviewer, if necessary, but this is a cumbersome way to do things.

TIA for advice!

-avi
Avi
 
Posts: 69
Joined: Thu Jun 04, 2009 1:36 pm

Re: synchronizing two Windows-based "desktops"?

Postby Brian_Houghton » Wed Feb 18, 2015 6:42 am

Hi Avi,

Thanks for posting.

The best option is to use Dropbox as a means of syncing the files between the two machines. It will be file level syncing, not field level as you get via the conduit, but it should work.

To set up, do the following:

- create a Dropbox acccount (dropbox.com)
- install the official Dropbox app on both computers
- install HanDBase Desktop on both computers
- using the Configure menu in HanDBase Desktop, create a custom user and place the folder for that user within the Dropbox folder so that its contents are synced (do this on both machines)
- when using HanDBase Desktop, use the custom user you created so that databases are stored within the Dropbox subfolder

Hope this helps.
Kind Regards,
Brian Houghton, DDH Software
Brian_Houghton
 
Posts: 2246
Joined: Wed May 20, 2009 8:30 am

Re: synchronizing two Windows-based "desktops"?

Postby DavidDevaneyJr » Thu Feb 19, 2015 3:35 am

Hello Avi,

First, let me apologize for this long post. I know I can be very verbose when typing out instructions but I want to make sure I cover everything. You may want to copy this to a Word Document or something so you can print it out.

After some testing tonight I came up with a couple other possible ways to synchronize and have it be on a record level using one of the HanDBase Conduits. I only tested this between two windows computers so this might not work as well if you continue to use the HTC Advantage Windows Mobile device as well. It should be do-able though, but you might have to modify the configuration somewhat.

Since the Asus device is basically replacing your HTC Advantage, based on one of your previous posts, I would continue to consider that the "Mobile" device. So technically all you would need on that is the HanDBase Desktop, although if you do create and edit Forms, and want to do so on the Asus, you'd at least need a version of HanDBase Professional on that. Either way I would suggest installing your current version of HanDBase Pro for Windows Mobile on the Asus, to avoid having to purchase too many additional programs. This is assuming that the version of the HanDBase Desktop in the current download of HanDBase Pro for Windows Mobile is the most current. Maybe Brian can verify that for you.

Then I'd say to continue to consider your current XP Desktop your Desktop, as it is now. For that computer you'll need to get a copy of either HanDBase Professional Add-on for Android, if you want to create an edit Forms on your desktop. OR, if you don't create and edit forms you can just get HanDBase Plus Add-on for Android. As an existing user you can log into your account on the DDH Software website and click the HanDBase Upgrade Wizard link, in the right hand column, to get either of those for a discounted price, $14.99 or $9.99 respectively. Then install that software onto your current XP Desktop. Of course you can download a Demo version of the HanDBase Plus or Professional add-on for Android if you want to test this first. You can find a link to the Demo here.

http://ddhsoftware.com/handbaseandroidwin.html

Then on the Asus Mobile device do as Brian suggested and create a Custom User. But first create a folder to store the HanDBase files in. For this to work properly I'd suggest you create a HanDBase folder in your Documents folder, for consistency and then create a User folder in that, something like AsusDevice. And then, within that "User" folder create another HanDBase folder. So the path might be C:\Users\Avi\Documents\HanDBase\AsusDevice\HanDBase Then when you create the Custom User select that second HanDBase folder as the path to the PDB files. Then that user will show up in the HanDBase Desktop as a user, and you won't be prompted to install the file every time.

At that point, you will then need to share that UserName folder on the Network. I won't get into those details here though. You should be able to find instructions on how to do that by searching online. Just make sure you search for instructions on how to share with a Windows XP computer, as things are different between the two. Make sure when you share that folder you set the Permissions to allow Editing as well as Viewing files. After you've got that set up make sure that you can browse to that folder from your XP Desktop to see the HanDBase folder in it. I'd even suggest you try to open a test file from there on the Desktop, add a record and save it, to make sure there are no issues. Then on the Desktop computer browse to where you can see the shared network folders and right click on the UserName folder. Select "Map Network Drive" and then select one of the Drive letters. I chose M: (for Mobile). That should then show up when you open the "Computer" window as a drive. Make sure you can open it and view the HanDBase folder there any files in that folder.

At this point it gets a little more complicated. I am basing this on my Android device since this uses the Android Conduit, which is the only way to make this work for a Record Level sync. In the inner HanDBase folder you created above create a folder called "Info" (without the quotes of course). Then open the Notepad app and create a new file. There will only be one line in this file in the following format. Make sure you don't press Enter after typing, as I don't know what might happen if you do.

Code: Select all
8259863am44233dd


I would suggest coming up with your own ID but make sure it is 7 numbers then 2 letters then 5 numbers then 2 letters, as above. Save that file as "deviceid.txt" into that Info folder you created.

At this point you can open the HanDBase Desktop on the XP Desktop and click the Configure/Sync menu, then select Android Users. When the "Manage Android Users" window opens click the "Setup New Android User" button. Choose the third option for "Memory Card" and click Next. Click Next on the following screen as well. Assuming the Mapped Drive was set up properly and the deviceid.txt file is in place a new screen should show prompting you to enter a Name for the Android Device. Enter whatever you like there, maybe AsusVivoTab for example. Continue through the setup wizard, which will then Sync any files you have in the C:\Users\Avi\Documents\HanDBase\AsusDevice\HanDBase\ folder, if any.

Once that is set up you can copy all of your HanDBase PDB files to that folder on the Asus device, where they'll be seen by the HanDBase Desktop when you select that custom user. You can then Sync on the Desktop again to copy all of those files to the proper user folder there as well. I'd probably suggest putting a few test files there and make some test edits to make sure everything is working to your satisfaction before putting your actual databases into the rotation, just to be safe, and due to you using non-European characters. I did a few basic tests myself and didn't have any issues.

The only issue you will have with this setup involves Forms. The Android devices put the Forms files in a separate sub-folder on the device and look for them there when databases are opened. In Windows though, it looks for the Form files in the same folder as the database PDB file. So if you make changes to forms or create new forms you won't be able to automatically install those using the Conduit. You'll have to manually copy those from the User folder on your desktop, eg C:\Users\Avi\Documents\HanDBase\AsusVivoTab\HanDBase\ to your Asus device, and put them in the CustomUser folder there, eg C:\Users\Avi\Documents\HanDBase\AsusDevice\HanDBase. If you make changes to the Forms on the Asus device you'll have to copy them to the Desktop manually as well. I'm assuming the Data is more important than the forms though so that shouldn't be too much of a hassle.

Another option to the above, but with a similar setup, would be to save your HanDBase databases to a removable Memory Card on the Asus device. The Specs for that device say it has a MicroSD Reader. So if you have a MicroSD card you can use that to store your HanDBase databases instead. You'd create a HanDBase folder on the MicroSD card, create that same Info folder in the HanDBase folder and create the same deviceid.txt file in the Info folder. Then store your HanDBase databases and form files in the HanDBase folder there. Then on the desktop, assuming you have an SD card reader, or wanted to get one, and likely a MicroSD to SD converter card as well. You could use the same settings in the Conduit to set up that MicroSD card as the Sync path, which is what that function of the conduit was designed for, albeit with Android devices.

Theoretically this could also work with DropBox or Google Drive by mapping those as Drives using the subst command, or a program like this.
http://www.ghacks.net/2012/04/24/map-sk ... n-windows/
It might take some extra work to set it up so that the record level syncing works properly. I have NOT tried this, yet, so you would be doing this at your own risk.

One last question for you Avi. After reading some of your other posts I think I determined that the non-European language you are using is Hebrew, is that correct? I tried to add Hebrew on my computer to test how you might even be entering data in Hebrew in the HanDBase Desktop. I couldn't make it work, at least not just by adding Hebrew as an additional keyboard. After some additional searching though I found that by changing the System Locale in the Windows Region and Language settings to Hebrew (Israel), on a separate test computer running Windows 7, I was then able to enter Hebrew characters, and have them save properly in HanDBase. I found that this setting is what determines the "default" language for programs that don't support Unicode. It also still allowed me to switch from the Hebrew to English keyboard as needed. Is this how you have your system set up? If not can you please describe it, so that other users might be able to do the same, assuming they aren't using the iPhone or Android version of the software as well, just Windows. So you know, this worked in my test sync as well, although I was editing the file on the same computer, just opening the file from a different location. But I was able to verify that the conduit did not corrupt the Hebrew during the sync. Granted I just entered some random characters, which is why I suggest you test this a bit more before putting your actual files into rotation.

Best of Luck to you.

David
Regards,
David Devaney, Jr.
DavidDevaneyJr
 
Posts: 134
Joined: Tue May 19, 2009 11:01 pm
Location: Lake Worth, FL

Re: synchronizing two Windows-based "desktops"?

Postby Avi » Thu Feb 19, 2015 7:56 am

WOW! No apology needed, its dedication to customer support like yours that keeps us loyal! I wish all the Android users out there, and all the business/corporate users, knew what they were missing by not supporting HanDBase more.

I shall take a bit of time to digest all that, take a stab at it, and let you know how I get on with it.

About the Hebrew, you are correct. Here's how the XP is set up:
in HanDBase, Configure\Preferences\General\Select Font is set to Microsoft Sans Serif and Script is Western. I think any font would work here.
in Control Panel\Regional and Language Options\Regional Options tab\Standards and formats, I chose Hebrew, which gives me things like the symbol for the local currency; I think this is critical for making HanDBase show the Hebrew characters. But note that in Location, I still have the United States chosen.
On the Language tab in that same dialogue box, choose "Text services and input languages" and then click"Details" and this is where I have both English US and Hebrew installed, along with their keyboards. I have left the default input language as English -US, since I like it that way. Note that you can chose keyboard hotkeys for switching languages by clicking on "Key Settings". I did not need to enable "Compatibility Configuration" in the Advanced tab, but users of East Asian alphabets might want to.
Then, back on the Regional and Language Options dialogue, the Advanced tab contains "Language for non-Unicode Programs", where I chose Hebrew. I'm not sure if this last step is necessary, or if this is in fact the trick to getting it to work. In any event, with this setup, my computer dialogues and menus are all in English, as I prefer, but in any application, including HanDBase, I can switch to Hebrew input with correct Right-To-Left support (Arabic also needs this) with a simple hotkey.

Thank you, Dave, for all the research and help - hope I can successfully follow your instructions.

all the best,
-avi
Avi
 
Posts: 69
Joined: Thu Jun 04, 2009 1:36 pm

Re: synchronizing two Windows-based "desktops"?

Postby DavidDevaneyJr » Sat Feb 21, 2015 2:39 am

If you have any questions about this setup, feel free to Private Message me here. If necessary I can then send you any files you might need via email.

As far as the Hebrew settings, for the HanDBase Desktop. I think the key is the Advanced/Administrative Tab in the Regional and Language Options. Which may vary slightly depending on your version of Windows. On that tab is the "Change System Locale" button. Above that it specifies "Current Language for non-Unicode Programs". This is the key for getting HanDBase Desktop to work for languages other than English. This should work for most other non-European languages, assuming the Windows Language option does not use Unicode. So I'm not sure if this will work for Chinese or not. But I think it may work for Greek or other languages that have a Windows variant. By this I mean that English in HanDBase uses the Windows 1252 encoding and the Hebrew seems to use Windows 1255. I'm not sure about other non-European languages so YMMV (Your Mileage May Vary) but this may be an option for those using languages other than HanDBase.

In my test I only changed the "System Locale" so I don't think any of the other settings matter for using the HanDBase Desktop with other languages. Additionally, I found that this is the key. You can't have your System Locale be "English (United States)" and then just add other keyboards. Your System Locale has to be set to the correct language, which will likely enable a secondary English keyboard. If not you can add that yourself on the "Keyboards and Languages" tab. The non-English/non-European language has to be set as the System Locale though, for this to work.
Regards,
David Devaney, Jr.
DavidDevaneyJr
 
Posts: 134
Joined: Tue May 19, 2009 11:01 pm
Location: Lake Worth, FL

Re: synchronizing two Windows-based "desktops"?

Postby Avi » Sun Feb 22, 2015 12:22 pm

thanks so much Dave. Had a minor setback here as a lightening strike took out some of the network equipment and peripheral hardware in the house, so I have to get all that sorted out before I can proceed...

-avi
Avi
 
Posts: 69
Joined: Thu Jun 04, 2009 1:36 pm

Re: synchronizing two Windows-based "desktops"?

Postby Gab-Hop » Tue Mar 03, 2015 6:01 pm

Hello David Devaney
I was just trying this out and I can't get past
At this point you can open the HanDBase Desktop on the XP Desktop and click the Configure/Sync menu, then select Android Users. When the "Manage Android Users" window opens click the "Setup New Android User" button. Choose the third option for "Memory Card" and click Next. Click Next on the following screen as well.

I just get the error:
"Could not locate any connected drive letters that are linked to HanDBase on an Android device. Please make sure you have USB storage mode enabled and that you have run HanDBase on this device before."
I have mapped numerous network drives
deleted all partnerships
deleted all other custom users
deleted shared DB settings
I can browse to the mapped drives without any problems
I tried mapping drives on a local network as well as on Acer(C:) on the PC
Got any ideas what i'm doing wrong?
Thanks Gabriel
Gab-Hop
 
Posts: 45
Joined: Mon Jan 13, 2014 11:34 pm
Location: New Zealand

Re: synchronizing two Windows-based "desktops"?

Postby DavidDevaneyJr » Tue Mar 03, 2015 9:17 pm

Gab-Hop wrote:I just get the error:
"Could not locate any connected drive letters that are linked to HanDBase on an Android device. Please make sure you have USB storage mode enabled and that you have run HanDBase on this device before."
I have mapped numerous network drives
deleted all partnerships
deleted all other custom users
deleted shared DB settings
I can browse to the mapped drives without any problems
I tried mapping drives on a local network as well as on Acer(C:) on the PC
Got any ideas what i'm doing wrong?
Thanks Gabriel


Hi Gabriel,

Basically the way this works is that is assumes there is a HanDBase folder at the root level of the Mapped drive, as it would be on a Memory Card from an Android device. When you are mapping the drive and browse to it, is the HanDBase folder you want to sync files from visible there when you open that Mapped drive? If so, did you create an Info folder inside that HanDBase folder and then create the deviceid.txt file and save it to that Info folder with the single line of text, the ID, in the format specified? I'm not sure if the filename of the deviceid.txt file is case sensitive, as far as the Conduit is concerned but since it's all lowercase on an Android device I would make sure it's lowercase there as well. I can't attach a .TXT file in the forum so you'll have to create that yourself.

Let me know if that helps.

David
Regards,
David Devaney, Jr.
DavidDevaneyJr
 
Posts: 134
Joined: Tue May 19, 2009 11:01 pm
Location: Lake Worth, FL

Re: synchronizing two Windows-based "desktops"?

Postby Gab-Hop » Tue Mar 03, 2015 9:36 pm

Thanks David
It now works
Just had the root levels a bit mixed up
will now do some trials :D
Gab-Hop
 
Posts: 45
Joined: Mon Jan 13, 2014 11:34 pm
Location: New Zealand

Re: synchronizing two Windows-based "desktops"?

Postby DavidDevaneyJr » Tue Mar 03, 2015 10:25 pm

I'm glad you were able to get it working Gabriel. Let me know if you have any other questions.

So you know, if you are you are planning to do some trials with Multiple Users, by setting up multiple Mapped drives, you will need to do the following.

1. Create the Drive Mapping.
2. Setup the Partnership for that User/Mapped Drive.
3. Delete/Remove the Drive Mapping.
4. Set up a New Drive Mapping for a new user.
5. Setup the Partnership for that new User/Mapped Drive.
6. Repeat Steps 3-5 for each additional user.
7. Re-Create all of the Drive Mappings you had previously.

Since the Conduit was not designed for this it requires that workaround because what the conduit does is search all of the Drives currently connected or mapped for that HanDBase folder and the deviceid.txt file. If you have multiple drives mapped with that same setup the Conduit might see the original one first when you try to set up the second one and give you an error that the User already has a Partnership. But if you add the Mappings and the Partnerships one at a time, removing just the mapping after each, you will be able to add multiples and the Conduit will remember the others for when you map those drives back.
Regards,
David Devaney, Jr.
DavidDevaneyJr
 
Posts: 134
Joined: Tue May 19, 2009 11:01 pm
Location: Lake Worth, FL

Next

Return to HanDBase for Windows

Who is online

Users browsing this forum: Google [Bot] and 0 guests