UNIFACE 8.1.01 - Migrating from UNIFACE 7
Note: The term Business Object Model is named 'Application Model' in the UNIFACE Beta release.Steps to take
The Migration Process
Migration FAQs
In UNIFACE 8.1.01 the setting "demandload=..." in the
.ini-file is no longer used.
UNIFACE 7.2 needed this setting to find the entry points of UNIFACE DLL's. In UNIFACE 8
this information is stored within ULIB.DLL.
Versions of database drivers could be modified in UNIFACE 7.2. by changing the "demandload=..." setting. In UNIFACE 8.1.01 the versions are stored in the section [driver_settings] of the .asn file, e.g.:
[driver_settings] ORA = U4.1
meaning that the UNIFACE 4.1 Oracle driver is used for accessing Oracle databases.
Non-UNIFACE DLL's could be added to the
"demandload=..." or "preload=..." setting in the [userdlls] section in
UNIFACE 7.2, which is also obsolete in UNIFACE 8.1.01.
There is a new .asn-section called [user_3gl] which now contains this information.
Example:
[user_3gl] mydll(function1,function2) otherdll thirddll /preload
This illustrates 3 types of use:
You can explicitly specify the entry points of a DLL
If you don't specify the entry points, UNIFACE will look in the DLL for them (without actually loading the DLL), which is the same as UNIFACE 7.2 did for "demandload=..." DLL's.
If you specify "/preload" UNIFACE will load the DLL at starting up. This is only necessary for DLL's which are not called by UNIFACE itself.
Also see: 3GL Signatures
When migrating UNIFACE V7.2 Applications to V8, your application sources need to be V7.2.05 or higher. If not, use previous migration/upgrade instructions to get to this level.
Migrating your 7.2.05 sources to V8 involves the same steps as when migrating from one maintenance release to the next: Migrating your Repository to V8 means adding values to a V7 Repository to convert it a V8-styled Repository. All new Fields added to the Repository are of type "variable length", which means they will be added automatically by UNIFACE.
There are two ways of migrating to V8:
1. Always make a backup
2. Start the UDE.
3. Make sure you have imported the UDE defaults.
4. Import your .trx or .xml files if nessecary.
5. Go to Goto->Administration->Migrate Repository. You will see the following message:
Click the button "Migrate" to start the migration. Depending on the size of your Repository, the migration process might take some time to complete.
6. Check for possible errors in the Message Frame (View->Message Frame). If you didn't import the default values as mentioned in step 3, you will see error messages in the message line.
The Migration process performs the following upgrades to your Repository:
For all Entities:
For all Entity Subtypes:
(Note: Compiling Business Object Models and Components may show more instances of warnings and info messages caused by the newly created Fields. These warnings are similar to those given for the Supertype Fields).
For all Components:
For all Components based on a Component Template:
For all Component Templates:
What happens if I don't migrate? / How can I tell if I forgot to migrate?
When compiling a Component that uses Subtypes, the compiler will generate errors, indicating that it can't find the Fields for the Subtypes.
Can I migrate again after importing more V7.2 data in a V8 Repository?
Yes, you can, and Yes, you should. The migration process will check and migrate any V7.2 definition that it encounters in the Repository. Already migrated (or new) V8 definitions are left unchanged.
I Adapted The UNIFACE 7 Default Triggers Myself. Are Those Still Valid ?
Yes they are, but the messages in which you coded them are not accessed anymore. Thus, you need to move your adapted default code into the UNIFACE 8 defaults.