Progress Provision and Openedge

Chu

New Member
One simply question hopes you all can answer me. Can the Progress 4GL completely compatible to openedge ver 11? thank You!
I have some 4GL source codes which were written in Progress Ver 8.2B environment. Can I just compile the 4GL source codes by
Openedge version and use them on Progress openedge.
 
In theory yes you can, but in practise you may have some issues. The only way to find out is to try compiling the source code and test the application.
 
I'll be a little more positive than Cringer. PSC is very heavily committed to forward compatibility. In most cases, just compile on the new platform and presto it works. Occasionally there is a need to set some start up parameters to make everything look right. Occasionally, there is an issue like having used a word for a field name in the database which becomes a reserved word in a later version (one of my arguments for some version of Hungarian notation). Even then, one can typically just put that word into a keyword forget list and get running right away, but, of course, one needs to change it if one ever wants to use that keyword.
 
I agree with Thomas that it typically just works. In my experience some of the issue seen when moving from a previous version to a newer one have to do with size limitation. If a piece of the r-code segments is close to a limit, moving to a higher version may make it exceed the limit. The good news is that all the r-code limits have been increased in OpenEdge 11, so hopefully this will not affect you. If it does, you may need to break up p-code files into multiple procedures, or possibly re-organize screen layout to make it all fit.

As for the database, you will need to convert it from v8 to v9, then from v9 to v10, and finally v10 to v11. In the $DLC/bin there are utilities named 83dbutils, 91dbutils, 101dbutils that are available to help you do your database conversion. However converting this way does not take advantage of any of the great features in the database that have been added between version 8 and version 11.

...MikeF
Mike Furgal
Director - Managed Database Services
BravePoint - www.bravepoint.com
 
Could there be potential issues related to dependency on older versions of ADE/ADE2?

Also, in some cases the newer compilers are stricter than old ones, for example the 10.2B will throw a run-time warning about code in a procedure after an unconditional return (i.e. "unreachable" code), and that won't show up in a compile listing. I wouldn't say such issues are widespread, and of course they depend on your coding practices, but it illustrates that some measure of code analysis or regression testing may be advisable as well.

Another related issue I have seen is that large DLC version jumps are also accompanied by platform/OS changes, and they can bring their own issues. Developers may take dependencies on the OS or platform type (explicitly or otherwise), and these can cause a given program to function differently on one platform versus another.
 
One can, of course, continue to use the old ADM framework.

Compiler *warnings* don't keep one from running code.
 
I'll be a little more positive than Cringer.
You are right of course - in theory :) I'm just speaking from experience where we experiened certain issues moving from v9 to v10 where Progress bugs had been introduced meaning that things didn't operate quite as we expected. Obviously these bugs were reported and are now fixed, but for a while we had to make some changes to the way things worked.
 
Having made transitions of code on every version from 3 to 11, load and go is the experience I have had most of the time. The worst was when they added userid and I had a field in a table by that name. Even that, keyword forget got me past it until I could change the code.
 
Back
Top