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:
ADD PANEL JOB-DATA
DEVICES=(12X40,24X80,32X80).
ADD PFLD NUM-POSITIONS.
ATTRIBUTES=(BRIGHT,BLUE)
FOR (12X40)
AT (2,40)
VALUE IS '# POSITIONS'
FOR (24X80)
AT (3,80)
VALUE IS 'NUMBER OF POSITIONS'
FOR (32X80)
AT (3,80)
VALUE IS 'TOTAL NUMBER OF POSITIONS'.
The FOR clauses in the previous example establish the following device groupings:
Clauses before the first FOR clause in an MFLD or PFLD statement apply to each subsequently established device grouping. In the previous example, the ATTRIBUTES clause displays each literal field established in the PFLD statement in bright blue.
ADD MAP EMP-INFO
AUTOPANEL DEVICES=(24X80,32X80,43X80).
ADD MFLD
FOR (24X80,32X80)
AT (14,15)
VALUE IS 'DEPT NAME'.
The FOR clause in the previous sample MFLD statement establishes a device grouping made up of two device types (24X80 and 32X80). A third device grouping (43X80) is implicitly created; however, no value is assigned to the latter device grouping by this MFLD statement.
ADD MAP CEXME413
AUTOPANEL DEVICES=(24X80,32X80,43X80)
USING (EMPOSITION 100).
ADD MFLD
FOR (24X80)
AT (14,15)
DFLD SALARY-AMOUNT-0420.
ADD MFLD
FOR (32X80)
AT (20,15)
DFLD SALARY-AMOUNT-0420.
Each MFLD (for MAP AUTOPANEL) statement in the previous example associates a screen field with the SALARY-AMOUNT-0420 record element by establishing a device grouping:
A third device grouping (43X80) is implicitly created in the previous example; however, values for SALARY-AMOUNT-0420 are not displayed on 43X80 devices.
ADD MAP CEXME413 VERSION 2
AUTOPANEL DEVICES=(24X80,32X80,43X80)
USING (EMPOSITION 100).
ADD MFLD
FOR (24X80,32X80,43X80)
AT (10,15)
DFLD SALARY-GRADE-0420.
ADD MFLD
FOR (24X80)
AT (14,15)
DFLD SALARY-AMOUNT-0420.
ADD MFLD
FOR (32X80)
AT (20,15)
DFLD SALARY-AMOUNT-0420.
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.
|
Copyright © 2013 CA.
All rights reserved.
|
|