PFC 6.0 Migration |
Page 1 of 3 |
By Boris Gasin |
Initial Release |
Version 1.0.00 |
|
12/6/97 |
Added references to the PowerBuilder 6.0 Migration Documents |
Version 1.0.01 |
|
1/27/97 |
Added a section related to the new events mapped to standard event IDs |
Version 1.0.02 |
PFC 6.0 release contains a great number of new objects and enhancements eagerly awaited by the developer community. The excitement can quickly turn into anxiety when one is faced with migrating a year long project. Fortunately PFC developers have made a conscious effort to remain backwards compatible and have provided utilities that should help in PFC and PowerBuilder 6.0 migration.
The goal of migrating a PFC project is simple: Integration of new PFC features, while maintaining any extension logic. This may be accomplished by copying the new PFC libraries and generating new extension layer objects. However this is complicated by modified PFC 6.0 library structure, altered inheritance hierarchy and different extension approaches.
The object of this article is to outline a possible migration strategy and to point out any possible hazards along the migration path.
Included in PFC 6.0 are two new tools that you will find indispensable during the migration process.
Before attempting to migrate a project one should become familiar with both utilities as they will be used extensively during the migration. It would be beneficial to test both utilities on a dummy application.

As the name implies the Powerbuilder Migration Assistant is intended to simplify the migration process. The Migration Assistant is nothing more than a simple, but very effective search utility. It allows you to scan any number of PBLs for any occurrences of a string(s) specified in a file. The Migration Assistant is deployed with four source files.
| pfcobs.txt | Contains PFC 6.0 obsolete syntax. |
| psobs.txt | Contains PowerBuilder 6.0 obsolete syntax. |
| funckobs.txt | File containing a list of all FUNCKy functions. |
| custobs.txt | Empty placeholder file that can be utilized to search for custom syntax. |
The file format is tab separated text, containing two fields
The Migration Assistant uses ORCA interface. Because the interface is used in "read-only" mode the utility is version-independent. In other words the utility may be used with 5.0 as well as 6.0 projects.

The PFC Library Extender Utility is an inheritance adjuster that allows to insert an additional extension layer. The extension layer object prefix can be specified and objects may be selectively included / excluded from the process. The existing extension layer code may be left in the bottom layer or optionally moved to the newly inserted middle layer.
Before attempting to migrate any application a full backup of all PBLs including the PFC should be performed. If a critical failure occurs during the migration, the application may be left in no-mans land somewhere between versions. As a result you may not be able to open it in PowerBuilder 5.0 nor 6.0.
| Step 1 | Backup all project libraries |
One way to determine if any obsolete Powerbuilder functions were used, is to attempt PowerBuilder 6.0 migration. You will be prompted with errors. An alternative is presented by the new Migration Assistant utility. One option provided by Migration Assistant is to scan for obsolete PowerBuilder syntax. The utility will use psobs.txt as a source for the list of obsolete syntax and suggested replacement / actions. If you discover obsolete PowerBuilder syntax undocumented by Powersoft you can append it to the psobs.txt file.
In general, there may be other PowerBuilder 6.0 migration issues, more complicated than obsolete syntax. The PowerBuilder 6.0 migration deserves a separate discussion and falls outside of scope of this article. Typically Powersoft documentation and the Technical Information Library, available online at http://techinfo.sybase.com/, do an excellent job of documenting the PowerBuilder migration procedures. Currently the following documents are available:
| Doc Id: 47714 | Technical Migration Information for Migrating to PowerBuilder 6.0 |
| Doc Id: 47718 | Release Notes for PowerBuilder Version 6.0 Enterprise Edition |
| Step 2 | Scan the 5.0 version of the project for obsolete PowerBuilder syntax |
| Step 3 | Convert the application to PowerBuilder 6.0 |
Last revised: February 15, 2004 03:58 AM.