To migrate earlier ABL Application code:
Between Major OpenEdge releases:
All applications developed earlier Progress / OpenEdge releases can be migrated to later releases by recompiling the entire Application source code using the (migrated) target version.
A recompile will always be required when moving to a different Major OpenEdge release as the r-code version always changes between Major versions.
This includes earlier (Progress 8) ADM1 and (Progress 9) ADM2 Smart Objects. To ensure no r-code version incompatibilities are introduced due to changes in the framework code, it is recommended:
- To use the install directory <DLC>\src\* source code versions of the SmartObjects and add those to the Application's source code tree.
- Assure these are in the PROPATH before the default directories supplied with the OpenEdge installation.
Between Minor OpenEdge releases:
- Forward-compatibility is guaranteed for r-code, but not backwards-compatibility.
- Code compiled in a lower minor release will run in a higher minor release; the other way around is not guaranteed.
- While the r-code version number may remain the same, using new ABL features added in a later minor release will break compatibility with earlier minor versions.
Further considerations are discussed in Articles:
To prevent regression issues in production:
1. Review Deprecated 4GL / ABL Features and Functionality.
- It is not guaranteed that the old code with deprecated statements will still work in OpenEdge.
- While these may still work, it is strongly recommended to start modifying your code.
- In the event these don't work as required, Technical Support will provide best effort assistance. No escalations, enhancements or hotfixes will be provided.
- Modify application code as required to replace deprecated statements with alternatives to prevent major migration issues in the future. It is also recommended to review the new features and technology and implement those where applicable.
- For a complete description of deprecated features review the "OpenEdge Platform and Product Availability Guide"
2. Test the migration before deploying to production
Before migrating or deploying the application in a live environment, test the application thoroughly under the new OpenEdge release. This to prevent the undesired consequences of both deprecated a possible regression issues impacting business operations in a production environment.