Previous Topic: Special Coding Features of the Batch CompilerNext Topic: Positioning Maps on Different Devices


Defining Versions of Maps for Different Devices

Supported Screen Sizes

The following terminal screen (that is, device) sizes are supported by the batch compiler:

Defining Device-independent Maps

A map load module that can be used with more than one device type is said to be device-independent. A map developer uses the batch compiler to define a device independent map by specifying different screen layouts for each device on which the map can be displayed. For example, it might be necessary to define shorter literal fields for a 12X40 device than for a 43X80 device.

The DEVICES clause of the MAP AUTOPANEL or PANEL statement is used to specify the list of devices that is valid for the map being defined. The list of devices can be subdivided into device groupings; a different screen layout can be specified for each device grouping.

Defining Device Groupings

Device groupings are established at the field level by using MFLD (for MAP AUTOPANEL) or PFLD statements. Use any of the following techniques to establish device groupings:

Reconciling Conflicting Specifications

The batch compiler reconciles any conflicting device grouping specifications made by the map developer so that any given screen size belongs to only one device grouping. Since 24X80 and 32X80 are each specified in two different device grouping specifications in the previous sample statements, the batch compiler subdivides the first device grouping and assigns the specifications made for the grouping to each of the three device groupings (24X80, 32X80, and 43X80) established by the second and third MFLD statements.

For example, the following device groupings are established by the previous sample statements:

The batch compiler subdivides conflicting device grouping specifications only as much as necessary to insure that each screen size belongs to a maximum of one device grouping. For example, two device groupings are established when the following sample statements are compiled:

ADD MAP CEXMJKD2
         AUTOPANEL DEVICES = (24X80, 32X80, 43X80)
         USING (INSURANCE-PLAN 100).
     ADD MFLD
             FOR (24X80,32X80)
             AT (14,15)
             DFLD COMPANY-NAME-0435.
     ADD MFLD
             FOR (24X80,32X80,43X80)
             AT (15,15)
             DFLD GROUP-NUMBER-0435.

The three screen sizes specified in the DEVICES clause of the previous MAP AUTOPANEL statement are divided into two device groupings:

An AT specification for a device grouping must be valid for the smallest device (screen size) in the device grouping. For example, AT (16,32) cannot be specified for a device grouping that contains the 12X40 device type.

The ORIGIN FOR clause also creates device groupings, as explained in Positioning Maps on Different Devices.

Effects of Device Groupings

The use of device groupings to achieve device independence can affect batch compiler performance, batch utility panel and map reports, and map load module overhead:

Maps defined with device groupings cannot be displayed or edited by using the online mapping compiler since that compiler can only display one screen layout for a given map-definition.