Client API-services

Author: (rogerw)


Say you have an interface into your Uniface application programmed as Uniface services. 
These services should be used by another Uniface application installed and used only as a Uniface client application, with a direct sql-connection to both databases (let's say different databases for the applications but on the same database-server). 
Both applications have used DEF as the path of the used database tables. You will offer your api-services as eg. an uar-file.
Presume that some of the services have to be called quite often.

What's the best way to handle the change of the database connection as the api-services are called?
Is the "open"-command too slow in this scenario, or should this be handled by starting another Uniface client process handling the API-service or is this at all possible ......?

Regards RogerW.


  1. Hi rogerw,

    in general, opening a database is branded the most time-consuming step because of all the internal preparations.

    So I assume if you switch context very often, different environments would give better performance.


    Author: ulrich-merkel (
  2. Hi,

    how/when to start the other environment?

    Regards RogerW.

    Author: rogerw (
  3. hi rogerw,

    put a dispatcher/proxi service in front

    Author: ulrich-merkel (
  4. Hi Uli,

    Tell me more....

    Regards RogerW

    PS. And contained in my question; everything should happen on the client and the database-server shouldn't be used as eg. an application server.

    Author: rogerw (
  5. Hi,

    I suppose that if I know the name of the model of the tables used by the services, I can assign the tables of that model to another database in the ASN-file of the calling application and so use only one Uniface client process. Although communicating through services, you shouldn't have to know anything about the called services datamodel, db etc..

    Explanation to my strange question: Being able to program and use services between different applications in the same manner in a client environment as if one has access to an application server, ie. simulating an environment the services being run on a server with their own ASN-file etc. .....

    Regards RogerW.

    Author: rogerw (