Procedural alphanumerics, HPA, and mapping provide an alphanumeric
input/output service. When should you use each one?
Procedural alphanumerics are likely to be best suited to your needs only
if your application is a simple one with a small number of fields. In
such cases, the overhead of a separate map definition operation may not be
justified. If you need to alter the layout of the display during
execution, you should use procedural or high-performance alphanumerics.
Otherwise, it is worthwhile creating a map for the following reasons:
- It is much easier to define a display format with GDDM-IMD than with
procedural alphanumeric calls. Procedural alphanumeric calls require
field locations to be defined in terms of rows and columns, whereas
GDDM-IMD enables you to physically indicate locations on a screen.
- Mapping uses the system's resources more efficiently. Some of the
processing required to create output data streams and interpret input
data streams can be done when the map is generated. It is therefore
done only once, instead of every time the program is executed.
- Your application is easier to change. If you need to alter the
display format, to take advantage of a new device for instance, you
can in many cases use GDDM-IMD to just alter the map. You would not
need to alter or even recompile (or reassemble) your program.
Using mapped alphanumerics presupposes a certain knowledge of GDDM-IMD.
If you are not very familiar with GDDM-IMD, you might also consider using
high-performance alphanumerics for these other reasons:
- High-performance alphanumerics does not require DASD I/O to retrieve a
mapgroup as mapped alphanumerics does.
- The dynamic nature of HPA field definition means that it is better
suited than mapped alphanumerics for use in applications where the
layout of the display is altered during execution.
- The length of the instruction path of HPA is shorter than that for
mapped alphanumerics.
- With mapped alphanumerics the layout of the screen can be changed
independently of the application. The same application can use
different maps for different sized screens and different national
languages.
|