Description
The HostAnalyzer program is a tool that helps you to
build an information base describing transaction screens, and host
definitions. This information is saved in the HostSchemas.xml file
for each application and can then be used
by HostConnector to support an XML host transaction interface. It could also be
used directly inside your ASP pages,
for example, to convert host screens to HTML pages.

In the screenshot above you can see the main features of HostAnalyzer.
On the left there is a tree that displays the collections and elements
within the collections. Underneath that is an item definition pane that
displays details of the selected iterm. On the right is an instance of the ActiveUTS
control that provides a terminal screen for connecting to your host.
Note that there is a splitter bar so you can change the window pane
visibility. You can also see that there are multiple toolbars with
functions that are
pertinent to the individual panes.
Clicking on a HostScreen (Logon Screen) on the tree displays the properties below and
also attempts to display the original saved screen data on the terminal screen pane.
Clicking on Fields under a ScreenMap on the tree pane rebuilds the
terminal screen from the fields collection. This may or may not look like
the original terminal transaction screen, depending on how many of the original
screen fields were included in the screen map. For example, if you use
Create on the terminal screen toolbar then it includes all the static data as
well as the input fields. However, if you have created a screen map for
mapping fields to your customized web page you have probably dropped much or all the
static data and the resultant reconstruction will only show the input fields;
perhaps a blank screen.
Clicking on Identifiers under a ScreenMap on the tree pane displays
all the identifiers from the identifiers collection on the terminal screen.
Clicking on an individual field or identifier in the tree
highlights the defined area on the terminal screen, just to help you verify
where it is visually.
In summary, the flow is as follows:
- Select Root in the tree view
- Add a new Application by clicking on the toolbar or using the Add menu
- Select the terminal screen and click on Connect in the toolbar, fill in
the fields and connect to you r host
- Enter transactions in the terminal screen until you reach a screen you
wish to include
- For each of these screens you will:
- display the host screen data
- click Save Screen to save the screen data
- click Create Screen map to create a map with all fields
- optionally customize the screen map
- create identifiers for the screen
A more detailed description is given below.
Using HostAnalyzer
Starting with an empty tree and you are about to create screen maps that
identify the transaction screens used in your application. First you need
to add an Application and give it a name. Then you can click on the + button
on the toolbar to create a new ScreenMap
schema
and add fields but, to start with, it is more intuitive to connect the terminal
screen control to your host and pull down a live transaction screen. Go to
the terminal screen toolbar, click on Connect and enter a valid terminal name and host definition,
then click on Connect. When you are connected enter your transaction codes
etc to display the required screen, using the terminal screen as a
straightforward emulator.
Now click on Create Screen Map in the Item Definition pane. This creates a new screen
map with a collection of field definitions that map to each of the terminal
screen fields, as defined by the host. Remember that this is only a
starting point. You can add, remove or modify fields later. At the
same time it is very useful to save the screen data by clicking on Save Screen.
This simply saves the screen content and is very handy for displaying a
recognizable screen when you click on a screen entry in the tree. Remember
that this data is actually irrelevant for the runtime screen mapping (the field
definitions are important then) but useful in this offline mode of preparing the
screen maps.
This new screen map is called ScreenMap2 or something similar. Click on
the entry in the tree pane and you will see the default assigned properties in
the pane below. You can change any of the properties and then click on
Apply Changes
in the toolbar for the changes to take effect. So, change the
screen map name to something more meaningful. In the tree you can expand your newly named screen map and see the Identifiers
and Fields collections. The Fields collection contains all the fields from
the host screen, created by HostAnalyzer but the Identifiers collection is empty.
This is because only you know what is significant about this screen that can be
used to identify it uniquely.
To create one or more Identifiers go to the terminal window and drag
select some significant text. Then click on Add Ident in the terminal
toolbar. Notice that a new identifier has been created in the tree.
Click on that entry and examine the properties below. The row, column,
length and text have all been captured from the selected screen text.
Again, you can always make changes to the properties and use Apply Changes.
Repeat as many times as you need to uniquely identify the screen.
You can always create a new field or a new identifier manually, by
selecting Fields or Identifiers under a screen map on the tree and clicking on
Add. You can then edit the properties to specify the screen position,
contents etc.
Now let's return to the screen map properties by clicking on the screen entry
in the tree and look at the item properties below.
Property Panes
When you select a collection item in the tree pane the properties are
displayed in the pane below. Here are descriptions of each property pane:
ScreenMap Properties

| Item |
Description |
| Refresh |
Click here if you change
properties but wish to revert to the original. |
| Set |
Sets the changes. |
| Screen Name |
The screen name. |
| Web Page |
A template web page to be
used in generating web output. If the action is Insert Form then a
copy is made of this web page and a form inserted. If the action
is Map Fields then this web page is used fields mapping. This page
name can also be used in an arbitrary fashion by a script. |
Field Properties

| Item |
Description |
| Field name |
The field name |
| Start row |
The start row on the
terminal screen |
| Start column |
The start column on the
terminal screen |
| End row |
The start row on the
terminal screen |
| End column |
The start column on the
terminal screen |
| Type |
The field type (0=input,
1=static) |
Identifier Properties

| Item |
Description |
| Id name |
The identifier name |
| Row |
The start row on the
terminal screen |
| Column |
The start column on the
terminal screen |
| Length |
Number of characters in the
field |
| Text |
The identifier text.
At runtime, when you call the MatchScreen method, this data is compared
to the data in the corresponding terminal screen position. |
| Condition |
The comparison condition
(equal, not equal, contains, not contains). |
|