Migrate the Application

When your Uniface 9 application is ready to migrate, export it, then import into Uniface 10. Whenever Uniface detects that there are records that need to be migrated, it automatically starts the migration process. This may also occur if a previous migration process was interrupted.

Previous step: Prepare the Uniface 9 Application for Migration

To migrate the application:

  1. Export your application definitions from Uniface 9.7 to a single XML file, if possible.

    You can use the Export form (Utilities >Export) or the $ude ("export") function in your own export component.

    Important: If you want to maintain Uniface 9 entry inheritance behavior, it is strongly recommended that you use a single export file for the whole application, or at least combine application model and related components into a single file. Otherwise, you will need to disable the MIGRATION_SCRIPT_V9_INHERITANCE logical and fix potential differences manually. For more information, see Inheritance and Compilation of Migrated Entries.

    If you do export to multiple files, you must export objects in groups that allow imports to be done in an order that follows dependencies. For example:

    • Include Procs
    • Field templates, including field syntax, field layout, and entity/field interface templates
    • Modeled entities (and related component templates and components)
    • Component templates
    • Application shells, components, and global objects

    Note: Include Uniface defaults only if you have determined that they are required. Prefer to import only the required defaults, not all of them. For more information, see Migration of Uniface 9 Defaults.

    Note: DICT definitions have changed substantially in Uniface 10. If you have the Uniface DICT model in you Repository, it will be removed by the Migration Utility, as it could potentially corrupt the Repository.

  2. Optionally, set migration logicals in the Uniface 10 ide.asn file to control some aspects of the migration process. For more information, see Migration Logicals.
  3. Import the export file or files into Uniface 10.
    • In the Uniface IDE, choose Main Menu ( ≡ ) >Import XML.
    • Run the Uniface IDE (ide.exe) with the /imp command line switch. For more information, see /imp.
    • Create a component that uses $ude "import" to import the files. For more information, see $ude ("import").

    If you exported your application into multiple files, import them in the following order:

    1. Include Procs
    2. Field templates, including field syntax, field layout, and entity/field interface templates
    3. Modeled entities (and component templates and components that use them)

      Note:  Modeled entities must be imported before or with the components that use them. Otherwise, the migrated application may have incompatible behavior.

    4. Component templates
    5. Application shells, components and global objects.
    Uniface will import the data, and then migrate the definitions, and report warnings and errors about potential problems and failures. If necessary, imported objects are removed.
  4. Review the import and migration messages in the migration log file.
  5. If necessary, fix migration issues in Uniface 9, then repeat this procedure. For more information, see Prepare the Uniface 9 Application for Migration.

Next step: Compile and Test the Migrated Application