Migrating an app from DFD to DE8 - Do or don't and how...
Our goal with DataEase is not to constantly focus on migrating old apps or pestering old customers with new upgrades. Our goal is to make it easy to develop in DataEase again so that new applications is quick and simple to make.
One of the reasons many users want to migrate an app (not the data) is that they find it hard to learn/adapt to the "new" DataEase so they think it is an easy fix to migrate an app that already exist into the latest version.
Oh, how we have proven them wrong over the years ;-)
I guess the rule must be that if it is hard to learn and use a software it is also hard to make a successful migration.
I have never been a supporter of the migration/conversion focus and have myself until today never successfully complete a migration from DFD to DFW... Shocked?
In a way you should be and in many other ways you aren't, because neither have you. The fact that I am head of development in DataEase is the shocking element, not that I haven't been able to successfully complete one.
I am a difficult person. I am very technically minded and rather adapt at solving riddles and figure stuff out, but what really intrigue me is the word "working".
Most technical people define the word working as when a theory is proven to be plausible. In Software terms that translates when it runs on their computer sometimes in ideal conditions. RELEASE!
In my mind works, is when someone without the advanced skill sit down with it takes a log, flips it over a couple of times to get an overview and then simply operates it. Every time I get into a new Volvo all the switches (even the new ones) are in the right place and work the way I want them. Every time I started a new DFW version, all the switches was still not working and still in the wrong place..
Migration from DFD to DFW didn't work back in the early 90ies, but looking back it worked a lot better than it did in the early naughties.
In the 90ies we expected it to work without a hitch (like DataEase migration used to be in DFD) and get on with it the same day. In the naughties we would be happy if we could just get the data/forms and procedures with us in any shape or form, but that too was now beyond us. Magically DataEase managed to move what could be done further and further away at the same times as expectations fell in such a way that we could always do less than expected. Magic!
One of the things that have really surprised me with DE8 and old DFD users (including myself) is that a product that in many ways is still just DFW is now "fantastic" and we love working with it, when we back in 1994 scorned DFW 5 as useless. I have spent some time on it and my conclusion is that - yes DE8 is a much enhanced and improved version - but more than that we have changed an adapted.
Back in 1994 we could only see the bits that didn't work, and now after 20 years of Access\Microsoft\dot crap\SQL we can now see DataEase in DE8 rather than broken dreams.
We don't focus so much on the bits that didn't work then, but on all the bits that is still DataEase now and more and more so.
The fact that you can sit down, make a form, add and subtract fields/tables/logic in real time when the system is in production. Realise your idea instantly... all the good DE stuff.
So back to the migration bit and the word Working.
I never completed a migration because it didn't work. Because I am Norwegian all my apps would be Norwegian so the English version would not work. I would have to hack and convert configuration files etc to make it "compatible" and then I would have the problem with , being decimal separator not . , norwegian characters like æØÅ and so we go on.
All the migration tools I tried would take exception over this and if not that it would find some corrupt old table that never caused me any trouble running the app, but now would GPF the tool. Since the migration tools in DFW has an all or nothing approach, that would be it. I could of course go back to the app and try to remove all the problems and try to migrate again... but...
Back to the word "Working" - see that is the problem. I know all the things I need to force through a migration and that is what we and partners have used to get them done as project, but that is not how I see the world. I want you to be able to do it yourself, because that is DATAEASE.
Some precarious route from DFD to DE8 as I describe below is not how I perceive a solution to be that has the name DataEase with an emphasis on the EASE!
How to Migrate from DFD 4.x to DE8 - a Cooking Recipe
1. You need a XP computer or at least a computer running Windows x86.
2. If you App is lower than 4.53 get DFD 4.53 and convert the app up to 4.53
2a. If Your App is higher than 4.53 you are already lost. Only 4.53 apps can be converted completely to DFW 5. DFD 5 apps are already 5 (without all the forms/DQLs/Menus etc) so you should already be a happy DFW user.
3. Get a DFW 550 version (no less no more), take a copy of your app, make a new empty catalogue and choose the Migration option.
You need a fully licensed version of 550, the free trial does not have this option....
3a. I chose all the options including the check DQL, but you might want to play a little with this.
4. Open the app and see that things work in DFW 550.
5. Get LegEasy 6 Windows (I had full version, but I think the demo would do - note to self, check it out).
6. Create another copy of the app and open in it LegEasy 6 (You can have moved to WIndows 7/8 now if you like). If you re in XP you can run DFW 6.52 too.
7. Take a backup, create a new app and restore the backup into the new app. This is to clean it up and get it a little more "modern".
8. Get 7.2, create another empty catalogue to migrate to.
9. Use the 7.2 Migration tool and migrate to 7.2.
10. Open the App in 7.2 and check that it starts/works and looks ok.
11. Take another copy of the app.
12 Open the new copy in DE8.
Voila, it worked!
All my data and DQLs, menus and forms are now in DE8.
They look like...you know, but it is there. And where I in 1994 was dismayed at this, I now feel an enormous sense of accomplishment.
I did this as an experiment, and it is doable but I hope that you all see that this is not the recipe of success and it is a big contributor to a lot of people leaving DataEase behind.
In practice this app can't be used in 2013 without a lot of re-working and I will only use it as a reference when I re-create the system in DE8/DG3, but still. It was nice to finally succeed with it and especially the DQL now will be an asset as I can automatically copy them over to my ExecDQL store and run them through EXECDQL.
Anyone of you that have tried to copy a DQL out of DFD know how tedious and difficult it is, so just to have the DQLs correctly named in a structure is a fantastic asset to me and I think to a lot of the more technically minded of you.
All this said and done. Things need to be easier!
I will try to make the versions needed to replicate this experiment available in a list for download but the active parties was:
DFD 4.53 Eglish Full Need to be un in x86
DFW 550 English Full - Need to be run in x86
LegEasy 6 Windows Full - Run in Windows XP/7/8
DataEase 7.2 Full (will work with Trial) - Run in Windows XP/7/8 try this trial T72-ULRIKDAC5IQ-05061 but if it is expired, go to www.sapphiregroup.com and apply for one.
DataEase 8 Classic Dev (will work with Trial) - Run in Windows XP/7/8 TrialKey here!