.NET Screen Scraping Technology for Host Integration
.NET screen scraping technology for 3270 mainframe and 5250 AS/400 applications using PASSPORT Host Integration Objects
PASSPORT Host Integration Objects lets developers use screen scraping methods to integrate 3270 and
5250 host applications with other .NET
or ActiveX applications. The programmatic host integration server includes the host
integration object components, programming
documentation, sample test programs and
sample source code. The Zephyr solution is
based on the Internet Engineering Task Force
(IETF) Open Host Interface Objects (OHIO) model.
Screen Scraping Technology API and .NET
PASSPORT Host Integration Objects (HIO) features IP-based screen scraping technology
and a well-documented, object-oriented API for easy, behind-the-scenes
access to 3270 and 5250 host applications via .NET. The documentation includes
sample source code and information to assist developers in their use of
standard screen attributes to traverse applications, read and write information to
the screen and much more. Given its programmatic approach to legacy
integration, developers have great flexibility in the use of the tool to connect
host applications with other .NET and ActiveX programs and solutions.
.NET Screen Scraping Technology Provides Low-Cost, Low Risk Host Integration
One of the benefits of using screen scraping technology for host
integration is that projects can be completed quickly, inexpensively and with little
or no risk. Available via an annual subscription-based license that includes the
cost of the software, access to technical support and all product upgrades,
PASSPORT HIO uses .NET and screen scraping technology to offer one of the most inexpensive approaches to host
integration.
PASSPORT Host Integration Objects, based on the IETF OHIO draft, includes
direct TN3270 and TN5250 connectivity to critical legacy applications using IP.
Separate terminal emulation is not required for host access. Sample .NET programs,
documentation and test programs that demonstrate the use of each object
method, property and event are included in the PASSPORT screen scraping technology solution.
PASSPORT Host Integration Highlights
- Non-intrusive integration with existing 3270 and 5250 applications
- Direct access to host screen buffers (screen scraping)
- Object-oriented API based on IETF OHIO draft
- Does not require terminal emulation
software
- Proven TN3270 and TN5250
communications module
- Designed for a Microsoft Windows
environment
- Offset addressing for host screen presentation space
- Simplified model for presentation
space
- Automatic generation of presentation
space field list and attributes
- Keyword-based function text strings
- Event notification for host
communication status and screen
updates
- Diagnostic tracing capabilities
What is OHIO?
The Open Host Interface Objects (OHIO) address the need for a standardized
advanced programming interface to the host data. OHIO does not modify the
TN3270/TN5250 protocol or data stream but instead provides a common
access method to that data once it arrives at the client. OHIO uses an object
oriented approach to divide the data into logical objects and provides
methods on those objects to allow standard access to the data. You do not
have to be concerned with details of structure packing and parameter
command codes, but can focus on the application functions.
The OHIO API was designed as a replacement for the older IBM HLLAPI (High
Level Language Application Programming Interface) screen scraping technology. The reasons include:
- OHIO was designed as an object oriented API, and thus has all the
well known benefits of the object oriented programming paradigm.
- Interacting with the host generally requires less code using the
OHIO API than doing the same function through the HLLAPI interface.
- OHIO objects concentrate related functions into specific classes,
an easier to understand model than the one HLLAPI entry point.
- No need to have a emulation session running in order to run an
OHIO application.

OHIO Features
- No architectural limit to the number of
sessions
- Event notification for host communications
status and screen updates
- Comprehensive error trapping
- Generation of error message text
- Offset addressing for host presentation
space
- Simplified model for presentation space
- Automatic generation of presentation
space field list and attributes
- Keyword-based function key strings
Objects
- Sessions: Contains a collection of Session
objects.
- Session: A host session containing one
Screen.
- Screen: Screen encapsulates the host
presentation space containing both OIA
and Fields.
- OIA: The operator information area of a
host session.
- Fields: Contains a collection of Field
objects.
- Field: A field in the presentation space. A
field is the fundamental element of a
virtual screen.
Note: “1” based counting is used for indexing (the
first item in a collection is item 1, not item 0) and “0” based counting is used for positioning (the
first position on the screen is position 0, not
position 1).
Sessions Object
A collection object consisting of sessions.
PROPERTIES
- Count Returns the number of items in the
collection of objects. Read-only.
- SessionLimit Returns an integer
representing the number of licenses. Read
only.
- Version Returns a string representing the
current version. Read only.
- ExpireDate Returns a string representing
the date when the software will expire.
Read only.
METHODS
- AddSession Adds a session to the
Sessions collection.
- OpenSession Returns an existing session
and adds it to the Sessions collection.
- CloseSession Closes a session in the
collection.
- Item Returns an element in the collection.
- UpdateLicense Updates the PASSPORT
Host Integration license code.
Session Object
Provides access to host data and
PASSPORT HIO functionality. The Session object contains sub-objects, such as the
Screen object and the Fields object.
PROPERTIES
- ConfigurationResource The configuration
resource for the Session object.
- IsConnected Indicates whether the
Session object is connected to a host.
True means connected, false means not
connected.
- SessionName The session name for the
Session object. The session name is
unique among all instances of the Session
object.
- SessionType The session type for the
Session object, 3270 or 5250.
- Screen The Screen object for this
session.
METHODS
- Connect Starts the communications link
to the host.
- Disconnect Stops the communications
link to the host.
- EnableTrace Enables or disables data
stream and/or low level trace for the
session.
EVENTS
- OnSessionChanged This event will be
generated whenever the session state
changes.
- OnScreenChanged This event is
generated whenever the virtual screen is
modified.
- OnOIAChanged This event will be
generated when anything on the Operator
Information Area (OIA) changes.
Screen Object
Provides access to the contents of the host
screen’s presentation space.
PROPERTIES
- Cursor The location of the cursor in the
presentation space.
- OIA The OIA object associated with this
presentation space. This object can be
used to query the status of the operator
information area.
- Fields The Fields object associated with
this presentation space. This provides
another way to access the data in the
virtual screen.
- Rows Returns the number of rows in the
presentation space. Read-only.
- Columns Returns the number of columns
in the presentation space. Read-only.
- String The entire text plane of the virtual
screen as a string. All null characters and
Field Attribute characters are returned as
blank space characters.
METHODS
- FindString Searches the text plane for the
target string.
- GetData Returns a character array
containing the data from the Text, Color,
Field or Extended plane of the virtual
screen.
- PutString Sends a string to the virtual
screen at the specified location.
- SendKeys Sends a string of keys to the
virtual screen.
- SendAid Sends an “aid” keystroke to the
virtual screen.
Fields Object
Contains a collection of the fields in the
virtual screen.
PROPERTIES
- Count Returns the number of Field
objects contained in the collection.
METHODS
- Item Returns Field object at the given
index.
- Refresh Updates the collection of Field
objects.
- FindByString Searches the collection for
the target string and returns the Field
object containing that string.
- FindByPosition Searches the collection for
the target position and returns the
OhioField object containing that position.
Field Object
A Field is the fundamental element of a
virtual screen. A field includes both data and
attributes describing the field. The OhioField
class encapsulates a virtual screen field and
provides methods for accessing and
manipulating field attributes and data. Field
objects can be accessed only through the
Fields object.
PROPERTIES
- Start The starting position of the field.
- End The ending position of the field.
- Length The length of the field.
- Attribute The attribute byte for the field.
- Modified Indicates whether or not the
field has been modified (TRUE or FALSE).
- Protected Indicates whether or not the
field is protected (TRUE or FALSE).
- Numeric Indicates whether or not the field
is numeric (TRUE or FALSE).
- HighIntensity Indicates whether or not the
field is high-intensity (TRUE or FALSE).
- PenSelectable Indicates whether
or not the field is pen-selectable
(TRUE or FALSE).
- Hidden Indicates whether or not the
field is hidden (TRUE or FALSE).
- String The text plane data for the field.
METHODS
- GetData Returns data from the different
planes (text, color, extended) associated
with the field. The data is returned as a
character array.
OIA Object
The operator information area of a host
session. This area is used to provide status
information regarding the state of the host
session and location of the cursor. An OIA
object can be obtained using the OIA
property on an instance of the Screen
object.
PROPERTIES
- Alphanumeric Indicates whether the field
which contains the cursor is an
alphanumeric field (TRUE or FALSE).
- InputInhibited Indicates whether or not
input is inhibited. If input is inhibited,
SendKeys or SendAID calls to the Screen
object are not allowed.
- Numeric Indicates whether the field which
contains the cursor is a numeric-only field.
(TRUE or FALSE).
- Owner Indicates the owner of the host
connection.
- String The entire text plane of the
selected object as a string.
A Real-World Example of .NET and Screen Scraping Technology for Host Integration
PASSPORT Host Integration Objects project can be used to replace outdated SNA terminal controllers with a new IP-based network that employs the use of state-of-the-art IBM 4690 POS equipment and PASSPORT HIO for 3270 and 5250 host integration.
A terminal controller is used to connect multiple point-of-sale terminals to a host system, and you can find them in retail, convenience, grocery, food service and hospitality stores around the world.
Windows 2003 and 2000 Server can be used as an IP-based replacement for aging SNA terminal controllers. The solution is to install PASSPORT Host Integration Objects on a Microsoft Windows server, create a middleware application that uses .NET and screen scraping technology to manage communication with a 3270 or 5250 inventory application, and ultimately display the appropriate information on the IBM 4690 point of sale terminals.
This solution uses PASSPORT to launch the host session, navigate through the inventory application, parse the various 3270 and 5250 screen buffers, and, using .NET and screen scraping technology, pass the appropriate data to and from the POS terminal and the mainframe using the PASSPORT Host Integration Objects server.
This implementation of PASSPORT HIO offers a very inexpensive approach, and is based on standard technology that can be easily managed throughout several hundred stores nationwide.
Free Trial Download of PASSPORT HIO
The trial download includes the host integration object components, programming documentation, sample test programs and sample source code.
Try PASSPORT with .NET Screen Scraping Technology for Host Integration
|