Path-to-Connector Assignments

A path-to-connector assignment describes how to access a specific resource via the appropriate network or database connector. It defines the path name, and assigns it to a configuration that specifies the connector to use, the name and location of the resource, and the credentials required to log on to it. Paths are defined in the [PATHS] section of the application assignment file.

For example, a path-to-connector assignment could specify:

  • The path to a local database via the MSS database connector:
    [PATHS]
    $DATA = MSS:Sales:|dbuser|dbpassword
  • The path to a Uniface Server using the TCP network connector:
    [PATHS]
    $SRV = TCP:ServerHost+13001|user|password|Server1
  • The path to a remote database via a Uniface Server acting as data server. In this case, it must provide information for both the network connector and the database connector:
    [PATHS]
    $SRV = TCP:ServerHost+13001|user|password|data + MSS:Sales:|dbuser|dbpassword

Note:  To prevent sensitive logon information from being visible in assignment files, you can use the Pathscrambler utility. For more information, see Encrypting Paths and Other Sensitive Data Using PathScrambler.

Database Paths

A database path points to a local database via a database connector, which must be the only connector referenced in the path assignment.

Syntax: $Path {=} DbConnectorCode: { DatabaseName } | { UserName|Password }

For example:

Local database path

  • $Path—name of a default database path (for example $MSS) or an installation path (for example $INS_MSS).
  • DbConnectorCode—three-letter Uniface mnemonic for a database connector, for example MSS
  • DatabaseName—database name, when appropriate, for example Sales
  • UserName— DBMS logon name
  • Password—password for UserName

The DatabaseName, UserName, and Password may each be replaced by a question mark (?) or completely omitted. If the target connector requires the missing information, a Logon dialog box for the database is displayed.

Note:  For many relational database systems, each path to a connector results in a channel to that DBMS, in other words, a different logon. In most cases, Uniface supports as many open channels to the DBMS as the DBMS can handle. However, not all DBMSs support more than one logon.

Network Paths

A network path defines the route and credentials to a Uniface Server, using the specified network connector. A network connector path is usually terminated by a UST that identifies a Uniface Server.

Syntax:

$Path {=} NetworkConnectionString{+...NetworkConnectionString}{|UST} {/ex}

The syntax of NetworkConnectionString is:

NetworkConnector:{HostID}{+PortNumber{:TLSProfile}}|{UserName}|{Password}

For example:

Path to a remote Uniface Server

  • $Path—user-defined path name.
  • NetworkConnector—three-letter code for the network connector; one of TCP or TLS. Default is TCP, but it is not always possible to omit this value in path assignments.
  • HostId—host machine where the Uniface Router that handles requests for a server is running. If omitted, the default is localhost ( the current machine). It can be specified as:
    • A Domain Name Server (DNS) entry, such as mycompany.com
    • An Network Information Service (NIS) entry, such as examplehost
    • An IP address, such as 93.184.216.119 (TCP4) or 2606:2800:220:6d:26bf:1447:1097:aa7 (TCP6).

    The format of the IP address, either as specified or as resolved by the DNS or NIS entry, determines the version of the TCP/IP protocol used. For more information, see Host Identification for TCP/IP and TLS.

  • PortNumber—port number on which the server or Uniface Router listens. If omitted, the default depends on the type of server and protocol. For the Uniface Router on TCP, it is 13001.
  • TLSProfile—name of a TLS connection profile that is defined in the [NET_SETTINGS] section of the assignment file; applicable only if NetworkConnector is TLS. For more information, see TLS Connection Profiles.
  • UserName—user name under which the target application runs. Required when specifying a Uniface Server or identifying a target application for a postmessage; otherwise optional. It may include operating system-specific information such as, a domain name used by the host to validate UserName.

    For example, Marketing\JohnDoe is used on Windows platforms, where Marketing is the domain name and JohnDoe is the user name.

  • Password—password for the Username account. Required in the path to an entity, service, or file; otherwise optional.
  • UST—UST of a Uniface Server, as defined in the Uniface Router assignment file. If omitted, the default UST (called DEFAULT) is used.For more information, see Uniface Server Types (UST).
  • /ex—Uniface Server running on HostID is exclusive for this client session. The Uniface Server will not be shared with other client sessions. The /ex switch is allowed only after the last network connector reference in the list. For more information, see /ex.

The HostID, PortNumber, UserName, and Password may be replaced by a question mark (?) or omitted completely. If one of these elements is omitted, it is replaced by the corresponding part of a default path. After such replacements, if a question mark is present, and the target connector requires those parts of the connection string, a logon dialog is displayed and the user must enter the required information manually.

For more information, see Network Connection Strings.

Server Connector Path

A server connector path references a Uniface Server that is acting in a specific role. It is not needed if the Uniface Server can act in ANY role.

A server connector path must always be preceded by one or more network references. It is therefore only found in the following path constructions:

$Path {=} NetworkPath+UnifaceServerRole:||

$Path {=} NetworkPath+DatabasePath

  • $Path—user-defined path name
  • NetworkPath—see Network Paths. The network path usually terminates with the UST that identifies the Uniface Server.
  • UnifaceServerRole—three-character code specifying the role that the Uniface Server is performing.
    Uniface Server Roles
    CodeServer RoleDescription
    ANY (or blank)ANY server Performs all Uniface Server functions.
    Database connector code
    (such as SLE, DB2, ORA)
    Database ServerConnects to the database connector.
    FILFile Server Locates files the application may need as a resource
    SRUApplication ServerExecutes the remote components of a Uniface application, such as services and reports.
    S3CIntegration ServerCalls non-Uniface components that the Uniface application needs
  • DatabasePath—see Database Paths. There is only one database path or login.

For example:

;Path to file server on host
$FILESERVER = TCP:host|user|password|files + FIL:||

Router Hopping

If more than one network connection string is specified, Uniface hops via the Uniface Routers to the last one. The last Uniface Router needs logon information using UserName and Password; all other Uniface Routers accept any client. You can chain Uniface Routers up to the maximum of 8 Routers.

For example:

;Path to Microsoft SQL Server on host2 behind a firewall
$DATA = TCP:host1||| + TCP:host2|user|password|hop + MSS:Sales:|dbuser|dbpassword

Note:  You cannot use this path syntax for postmessages or for DNP registration. You can register only to one Uniface Router and never via another Uniface Router. For more information, see Asynchronous Messaging.

Typical Path Assignments on the Client

The following are examples of typical path assignments you might use in your client assignment files:

;Path to file server on host
$FILESERVER = TCP:host|user|password|files + FIL:||
;Path to application server on host
$APPLICATIONSERVER = TCP:host|user|password|services + SRU:||
;Path to component server on host
$COMPONENTSERVER = TCP:host|user|password|components + S3C:||
;Path to ANY server on host
$TCP = TCP:host+13001|user|?|ust + ANY:||
;Path to ANY server on host
$TCP = TCP:host|user|password
;Path to exclusive database server on host
$DATA = TCP:host|user|password|data /ex + MSS:Sales:|dbuser|dbpassword
;Path to exclusive ANY server on host
$TCP = TCP:host+13001|user|?|ust /ex

Related Topics