Services

Service components are designed to handle most Uniface application processing. They usually group together those entities that are needed to support the processing of a business object, such as an order or a customer. For example, an order update service could combine entities used to update both customer and order entities.

Services contain one or more named operations that can be called by a Uniface application. They can exist and execute on any node in the system but cannot access globally defined objects such as variables. When partitioning applications, a service can be moved to the optimum place in the system. For example, services that provide database I/O could be run on the same server as the database itself.

Use a service component to perform operations called from a Uniface application. A service component has the following characteristics:

  • Can be run locally on the client or remotely on a server.
  • Does not allow user interaction.
  • Is not displayed.
  • Has full database I/O support.
  • Uses a limited set of ProcScript statements and functions.

Services do not have a user interface, so the visual layout is not important. However, they have a data structure which exploits the relationships between the entities in the service and can update databases.

When developing a multi-tier application, you can also use session services and entity services, which handle data access services.

Compiling a service development object produces a runtime object file with the extension .svc.

Restrictions on ProcScript for Services

Because service components do not allow user interaction, you cannot use ProcScript statements that display data or expect data input.

The following ProcScript statements should not be used in services:

  • askmess
  • apexit
  • display
  • edit
  • help
  • print
  • run

Related Topics