Uniface 10 Projects

Author: hans.hoogerwerf@omnext.net (Hans.Hoogerwerf)

Uniface 10 supports projects, which means you can define a project and add DSP's, entities, etc. However I wonder what is the sense of these projects? Normally a project is a standalone 'thing'. You can add, change, modify objects of this project without influence other projects. In Uniface 10, you cannot add a DSP with a name which is already used in another project (you get an error). If you modify a DSP in a project, which is also used in other projects, then the modifications are also applied to the other projects. You cannot sea which projects are effected with these modifications. Projects can be a useful add-on to Uniface 10, however I think the objects of the projects have to be stand-alone.

1 Comment

  1. The two observations made here are symptoms of the same underlying concepts:

    1. A project is not a hierarchy, but a user defined collection or grouping of development objects.
    2. A development object can be part of none, one or multiple projects
    3. All development objects visible in the IDE are part of the same repository and must have a unique name

    The implementation of project support in the Uniface 10 Web Edition is very basic. We aim to achieve the following in this edition:

    • Make clear that projects are the starting point for creating new development objects (Components, Entities, Libraries, etc)
    • An easy way to group objects:
      • Starting point for navigating to/opening editors (admittedly, double click on a  project reference is not yet supported)
      • Determine the set of objects that needs to be compiled
      • Create a deployment archive
      • Determine the set of objects that needs to be exported
    • Additional functionality will be added in future editions, such as search scope, navigation

    Apart from additional functionality we’ll also want to cater for the following:

    • Make visible what the impact is of renaming or deleting a project’s reference to an object: with or without renaming/deleting the referred object
    • Show when a project’s reference is unresolved, i.e. the object it’s pointing to does not exist
    • Make visible what the impact is of renaming or deleting an object: with or without renaming all project references that exist in the current repository
    • Make visible which projects an object is part of

    Author: Henk van der Veer (henk.van.der.veer@uniface.com)