Overview: Using Screen Native Access

Screen Native Access provides a generic representation of the host screen data through Synapta Services Builder for Screens, exposing all the data needed to describe host screens. Native access supplies programmers with both a snapshot of the current host screen and the ability to interact with the screen dynamically by modifying fields and sending AID keys.

Native access can also be used as a "backdoor" to the navigation of the Runtime Service engine. However, this is a last-resort scenario and should be used only when problems cannot be solved using standard techniques; for example, gathering data from an asymmetric table where fields are either non-uniform, or the number of columns is dynamic.

Alternatively, a better solution might be to use the server-side API and custom steps to address these navigation issues. For more information, see Using Custom Steps.

Data Representation

Although it does not supply "presentation" features such as field validation, field text formatting, field tab ordering, or OIA lines, the Native access representation of host screen data does provide:

Native access supports only commands or data that go all the way to the host. Presentation features are supported only on the workstation (renderer) or controller and need to be supplied by the user application.

Two data structures—a screen and a field—are used to describe a generic host screen. The screen contains properties and fields, and represents a rectangular array of character attributes, a cursor position, and one or more fields. Fields contain only properties and information describing the field's location on the screen, attributes for the field, and the data contained in the field. The renderer of the data decides how to display the data and how to combine the screen character attributes with the field attributes. Character attributes typically override field attributes.

In addition to screens and fields, constants are used to generically describe attributes and commands. The constants are a superset of all the supported attributes and commands for all supported hosts, and may bear no direct resemblance to the attributes or commands of any given host.

Note Unless otherwise noted, all indices and addresses are zero-based. Screen coordinates are one-based.

Native Access Interfaces

The Screen Native Access Bean (NAB) and XML interface object, implemented in the interfaces INativeAccess and INativeAccessEx, provide access to host screen data through the two Attachmate connector interfaces, IConnectorAccess and ITask.

INativeAccessEx inherits all the methods in INativeAccess, as well as several additional methods. INativeAccess is provided for backward compatibility.

Using Native Access in a COM Environment

You can use native access via the COM bridge with XML-based IConnectorAccess. The ITask implementation of native access is Java only, but the IConnectorAccess implementation can be used in native Win32 environments because the COM bridge is just an IConnectorAccess wrapper.

Native Access Interface Description
INativeAccessEx An ITask-derived interface used by the ScreenNativeAccessEx task bean to access a session. It supplies the screen view as a series of properties, and get or set methods are used to access both field and screen information.
IConnectorAccess An XML-based interface that uses the special native access task document to access a session.

For details about Attachmate interfaces, see Javadocs for Attachmate Interfaces.

Related Topics
Bullet Using Advanced Navigation, Overview
Bullet Using Custom Steps
Bullet Javadocs for Attachmate Interfaces
Bullet IConnectorAccess XML Representation
Bullet ITask Bean Representation
Bullet Screen Native Access Sample Code