0% found this document useful (0 votes)
22 views54 pages

CICS ClassBook Lesson03

Uploaded by

josephjabin8
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
22 views54 pages

CICS ClassBook Lesson03

Uploaded by

josephjabin8
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Customer Information Control System Data Communication Operation in CICS

Instructor Notes:

Add instructor notes here.

Customer Information Control


System
Lesson 3: Data Communication Operation in
CICS

Page - 03- 1
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
Lesson Objectives

Characteristics of 3270 display


Maps and Mapsets
Symbolic Map and Physical Map
Map definition Macros

Page - 03- 2
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.1: Methods for Data Communication

Types of Methods

Three methods are available to the CICS application programmer for


communicating with the terminals and logical units in the subsystems of the
network that form part of the CICS system.
The methods dealt with are:
• Basic mapping support (BMS)
• Terminal Control
• Batch Data Interchange (BDI)

Methods for Data Communication:


Basic Mapping Support (BMS) provides commands and options that
can be used to format data in a standard manner. BMS converts
data streams provided by the application program to conform to the
requirements of the devices. Conversely, data received from a
device is converted by BMS to a standard form.
Terminal Control is the basic method for communicating with devices;
whereas both BMS and Batch Data Interchange (BDI) extend the
facilities of terminal control to further simplify the handling of data
streams. Both BMS and BDI use terminal control facilities when
invoked by an application program.
Batch Data Interchange (BDI) provides commands and options that
may be used possibly in conjunction with BMS commands, to
communicate with batch logical units.

Page - 03- 3
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.2: Characteristics of 3270 Display

Functional Characteristics

Before using BMS to define screen layout, the functional characteristics of 3270
display station’s screen need to be understood.
They are:
• Field-oriented display
• The screen consists of a number of user-defined fields
• A special character called an attribute byte marks the beginning of a field

Characteristics of 3270 Display:


The 3270 screen is logically divided into a number of user defined
fields.
A screen field is a specified area that contains a particular
category of information.
Some screen fields allow the user to key in data into them
while others are protected from data entry.
The location and characteristics of screen fields are determined by
special characters called attribute bytes.
A screen field starts at the position immediately following its attribute
byte and ends at the position immediately before the next field’s
attribute byte. Thus the length of the field depends on the position
of the attribute byte. If there is no subsequent attribute byte, then
the field continues to the end of the screen.

Page - 03- 4
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.3: Attribute Byte Format

Concept of Attribute Byte Format

The attribute byte controls the following attributes:


• Protection
• Intensity
• Modified Data tag
It is always the first character of a field.
It occupies a character position on the screen but appears as a blank.

0 1 2 3 4 5 6 7

Protection Intensity MDT

Page - 03- 5
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.3: Attribute Byte Format

Concept of Attribute Byte Format

Positions Functions Bit Settings


0-1 Information about bits 2 thru 7
2-3 protection 00 = Unprotected alphanumeric
01 = Unprotected numeric
10 = Protected
11 = skip
4-5 Intensity 00 = Normal
01 = Normal
10 = Bright
11 = No-display
6 Must be 0
7 MDT 0 = Field has not been modified
1 = Field has been modified

Page - 03- 6
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.3: Attribute Byte Format

Concept of Attribute Byte Format

Field Protection
• Unprotected
• Protected
• Auto-skip
Field Intensity
• Normal
• Bright
• No-display
Shift

Attribute Byte Format:


Field Protection:
Unprotected: It can enter any keyboard character into unprotected
field. Data entry fields are generally called as unprotected fields.
Protected: Data cannot be entered in a protected field. If the operator
attempts to enter data, the keyboard is locked. Display only fields
are called as protected fields.
Autoskip: An autoskip field is a protected field that automatically skips
the cursor to the next unprotected field. They are usually used to
mark the end of data entry fields.

The difference between the protected field and a skip field is that
when the cursor is moved to a skip field, it automatically advances
to the first position of the next unprotected field on the screen.
When the cursor moves to a protected field without auto-skip, it stops
even though the user cannot enter data there. As a result of this,
protected fields without auto-skip are called stop fields. If a stop
field is used to mark the end of an unprotected field, the user has
to press the tab key to advance to the next data entry field.
An attribute byte will be required to mark the end of an unprotected
field. If the end of an unprotected field is not marked with either a
skip or stop field, the screen will be unprotected beyond the
intended data entry field until the beginning attribute byte of the
next field.

Page - 03- 7
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
Attribute Byte Format:
Field Intensity:
Normal: A normal intensity field displays the data at the normal operating
intensity.
Bright: A bright intensity field displays the data at a brighter than normal
intensity. This is often used to highlight keywords, errors, or operator
messages.
Nodisplay: A nodisplay field does not display the data on the screen for
operator viewing. This might be used to enter security data.

Shift:
It indicates whether the keyboard is numeric shift or alphanumeric shift.
In the older 3270 models, the numerals are located on the same keys as
some of the letters, so the operator has to use SHIFT key on the
keyboard to enter a numeric data. However, if a field’s attribute byte
indicates numeric shift, then the keyboard is automatically put into
numeric shift so the operator does not have to press the NUMERIC
SHIFT key.

Page - 03- 8
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.4: Basic Mapping Support

Concept of Basic Mapping Support

Basic Mapping Support (BMS):


• It is an interface between TCP and application program.
• It provides commands and options that can be used to format data in a standard manner.
• It converts data streams provided by the application program to conform to the
requirements of devices.
• It facilitates development of device and format independent programs.

Basic Mapping Support (BMS):


BMS removes the responsibility of formatting the screen from the
application program. BMS places the data with necessary control
characters in a TIOA* (Terminal Input Output Area). It allows
repositioning of fields without modifying application program
BMS makes the application program Format Independent and Device
Independent.
It is a main storage area, used for terminal input/output operations.

Page - 03- 9
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.5: Format Independence

Concept of Format Independence

Format Independence implies that application programs are written without concern
for physical position of data fields within a display.

In an application program, symbolic labels are used to refer the fields.

BMS relates the label to the actual position in the display.

Page - 03- 10
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.6: Device Independence

Concept of Device Independence

Device Independence implies that application programs can be developed without


any concern for physical characteristics of the terminals.
BMS prepares the message based on the terminal type being used.

Page - 03- 11
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.6: Maps and Mapsets

Concept of Maps and Mapsets

A screen defined through BMS is called a “map”.


Two ways of defining maps are as follows:
• CICS supplied macros
• Screen Definition Facility (SDF)

Note:
Map represents BMS coding for a screen, and Mapset represents a
load module.

Page - 03- 12
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.6: Maps and Mapsets

Concept of Maps and Mapsets

A “mapset” contains a single or multiple maps defined for one terminal type.
A mapset once created must be assembled.
A job to assemble a mapset requires two steps:
• The first transforms your mapset into a physical map.
• The second creates symbolic map from your mapset.

Note:
A mapset is a special kind of assembler program, to define the format
of each of the screens that the programs display.

Page - 03- 13
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.6: Maps and Mapsets

Concept of Maps and Mapsets

A group of maps, which are link edited together is called mapset.


• Each mapset must be registered in PPT.
• The mapset name consists of two parts as follows:
• Generic Name: 1 to 7 characters
• Suffix : 1 character
• Application program uses only the generic name.

Note:
The suffix is required at the time of mapset definition in order to
distinguish the device types if the same mapset is used for different
types of terminals.
CICS automatically inserts the suffix depending on the terminal in use,
thereby ensuring the device independence to the application
program.
A mapset is a special kind of assembler program, to define the format
of each of the screens that the programs display.

Page - 03- 14
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.7: Map Generation

Diagrammatic Representation

Design Screen

Code Map

Assemble

Physical Map Symbolic Map

-Load Library -Source Library


-Contains Literals -Contains Data-fields

Page - 03- 15
Customer Information Control System Data Communication Operation in CICS

Instructor Notes: 3.7: Map Generation

Program Preparation

BMS Mapset COBOL Source


Source Program
Translator
Listing
Application
Assembler Translator
Listing

Translated
Source
Program
Physical Symbolic Compiler
Map Map Listing
Compiler

Link-editor Object
Module

Load Link-editor
Module

Load
Module

Page - 03- 16
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.7: Physical and Symbolic Map

Types of Maps

A screen defined by CICS is called as a “map”.


There are two types pf maps:
• Physical Map, which is primarily used by CICS.
• Symbolic Map, which is used by Application program.

Page - 03- 17
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.7: Physical Map

Concept of Physical Map

Generate a A physical map is a load module that contains a table which is used by BMS to
map in CA and determine the screen locations of the data transmitted to and received from the
display station.
show the
Example:
physical map and the
• A physical map might indicate that a particular field is displayed on the screen at column
Symbolic map. Explain 16 of line 4.
the symbolic map later. • A physical map also indicates attributes of each field such as protection and intensity.

Physical Map:
The primary objective of the physical map is to ensure the device
independence in the application programs.
More concretely:
For input operations, the physical map defines maximal data
length and starting position of each field to be read and
allows BMS to interpret an input data stream.
For output operations, the physical map defines starting
position, length, field characteristics (Attribute Bytes), and
default data for each field, and allows BMS to add control
characters and commands for output in order to construct
an output data stream.

Page - 03- 18
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.8: Physical Map

Concept of Physical Map

It describes display format for a given terminal type.


It includes:
• The format of input and output data
• The fixed data such as page headings
• Symbolic names of variable data-fields
• The device type to which map relates
Physical Map generation entails the following:
BMS macro coding Assembly Link-edit
Load Module LOADLIB To be used by CICS

Page - 03- 19
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.8: Symbolic Map

Concept of Symbolic Map

A symbolic map, in COBOL, is a copy library member that defines the format of data
sent to or received from the terminal screen.
When an application program requests that a map be sent to the terminal, BMS
takes data from the symbolic map, formats (or maps) it according to the physical
map, and sends it to the terminal.
Likewise, when an application program requests that some data be retrieved from
the terminal, BMS uses the physical map to map the data from the screen into the
symbolic map.

Symbolic Map:
The primary objective of the BMS symbolic map is to ensure device
and format independence to the application programs. Thus
through the symbolic map, a layout change in the formatted screen
can be done independent of the application program coding as long
as the field name and length remain same.
It is used by the application program, which issues a COBOL COPY
statement in order to include a symbolic map in the program.

Page - 03- 20
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.8: Symbolic Map

Concept of Symbolic Map

Show an d Explain It defines all variable data fields.


the symbolic map It ensures device and format independence.
now.
It is used by application program which issues a COBOL COPY statement in order to
include a symbolic map in the program.
Symbolic Map generation entails the following:
• BMS macro coding Assembly Symbolic map definition
• COPYLIB Copied into CICS application program

Page - 03- 21
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.9: Format of Symbolic Map

The Format

A COBOL program must contain a COBOL COPY statement for each symbolic map
definition in the working storage section.
It starts with the 01 level definition of FILLER PIC X(12), which is the TIOA prefix
created by TIOPFX=YES of the DFHMSD macro.
Each symbolic map field consists of sub-fields. Each sub-field has a different suffix.

Format of Symbolic Map:


A symbolic description map is a source language data structure that
the assembler or compiler uses to resolve source program references
to fields in the map. Hence it must be copied into any application
program that refers to fields in the map.

Page - 03- 22
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.9: Format of Symbolic Map

The Format

• nameL: It indicates length of the data entered in the field.

• nameF: It sets to ON when field gets modified.

• nameA: It indicates the attribute byte for input/output fields.

• nameI: It indicates the input data field.

• nameO: It indicates the output data field.

Format of Symbolic Map:


nameL: It indicates the halfword binary (PIC S9(4) COMP) field. For
the input field, the actual number of characters typed in the field will
be placed by BMS when the map is received. For the output field,
this is used for the dynamic cursor positioning.
nameF: It is the Flag byte. For an input field, it will be X’80’ if field has
been modified but no data is sent (that is, the field is cleared).
Otherwise, this field is X’00’.
nameA: It indicates the attribute byte for both input and output fields.
nameI: It indicates the input data field. X’00’ will be placed if no data in
entered.
nameO: It indicates the output data field.

Page - 03- 23
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.10: Example of Symbolic Map Definition

Illustration

01 SAMPMAPI.
02 FILLER PIC X(12).
02 CHOICEL PIC S9(4) COMP-4.
02 CHOICEF PIC X.
02 FILLER REDEFINES CHOICEF.
03 CHOICEA PIC X.
02 CHOICEI PIC X(001)
02 MESSAGEL PIC S9(4) COMP-4.
02 MESSAGEF PIC X.
02 FILLER REDEFINES MESSAGEF.
03 MESSAGEA PIC X.
02 MESSAGEI PIC X(030).

Page - 03- 24
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.10: Example of Symbolic Map Definition

Illustration

01 SAMPMAPO REDEFINES SAMPMAPI.


02 FILLER PIC X(12).
02 FILLER PIC XX.
02 FILLER PIC X.
02 CHOICEO PIC X(001).
02 FILLER PIC XX.
02 FILLER PIC X.
02 MESSAGEO PIC X(030).

Page - 03- 25
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.11: Example of Customized Symbolic Map Definition

Illustration

SAMPMAPI.
01 SAMPLE-MAP.
02 FILLER PIC X(12).
02 CHOICEL PIC S9(4) COMP-4.
02 CHOICED PIC X.
02 CHOICEA PIC X.
02 MESSAGEL PIC S9(4) COMP-4.
02 MESSAGED PIC X(30).
02 MESSAGEA PIC X.

Page - 03- 26
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.12: Components of a Screen

The Elements

CICS identifies screen into three components:


• Maps
• Mapset
• Physical Map
• Symbolic Map
• Fields
• Unnamed (Literals)
• Named (Data fields)
• Stopper

Components of a Screen:
The first step in designing screen layout is to divide the screen into
functional areas such as title area, application data area, and
message area.
The title area of a screen should identify the program that displayed
data.
The application data area comprises the main portion of the screen.
Three kinds of fields are usually found in this area:
Keyword/unnamed/literal: They contain constant data sent by
program to identify the contents of the data field.
Data field/named: They contain data that the application
program retrieves from files and displays. The data may
appear exactly as stored in a file, or it may be edited, or it
may be left blank for operator to enter data.
Stopper field: It is on data entry screen and restricts the length
of the data field. Stopper field containing no data is used to
stop operator from entering too many characters in a field.

Page - 03- 27
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.12: Coding the Map

Coding the Map using BMS

MAPSET:
• A group of maps is called Mapset.
• Mapset name must be defined in the PPT. This is because CICS considers BMS mapset as a
program coded in assembler.

MAP1 MAP2 MAP3

MAP4 MAP5 MAP6

MAP7 MAP8 MAPn

Page - 03- 28
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.13: Modified Data Tag (MDT)

Concept of MDT

MDT is the one bit of the attribute character.


• If it is zero, it indicates that this field has not been modified by the terminal operator.
• If it is one, it indicates that this field has been modified by the operator.
• Only when it is ON, the data of the field is sent by the terminal to the application program.
Effective use of MDT reduces data traffic in communication line, thereby
significantly improving performance.

Page - 03- 29
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.13: Modified Data Tag (MDT)

Concept of MDT

Following are the three ways to set on the MDT :


• By Data-entry
• By setting attribute byte in the physical map
• By moving MDT attribute in the application program

Modified Data Tag:


When the terminal user modifies a field on the screen, MDT will be
automatically set to “1” (on) by the terminal hardware.
If CNTL=FRSET is specified in the DFHMSD or DFHMDI macro, when
the mapset or map is sent to the terminal, MDT will be reset to
“0”(off: that is, not modified) for all fields of the mapset or map
respectively.
If FSET is specified in the ATTRB parameter of the DFHMDF macro for
a field, when the map is sent to the terminal, MDT will be set to “1”
(on: that is, modified) for the field regardless of whether the field
has been modified by the terminal user.

Page - 03- 30
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.14: Map Definition Macros

Concept of Map Definition Macros

Open the .BMS file To code a BMS map, BMS provides assembler macros as follows:
and show the various • DFHMSD : To define a mapset
Macros. • DFHMDI : To define a map
• DFHMDF: To define a field

Page - 03- 31
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.15: Format of BMS Macros

The Format

The BMS map definition macros are purely Assembler macros.


Therefore the following coding must be maintained:

Col1 Col 10 Col16 Col17


Col72

Symbolic Opcode Parameter(s) Cont’d

Name Additional parameters


Char

Format of BMS Macros:


Label: The label specifies the symbolic name for the statement and
begins in column 1. For a BMS macro, the label must begin with a
letter and can be 7 characters long.
Op-code: The op-code specifies the instructions to be executed (in a
mapset usually one of the BMS macros). It begins in column 10.
For a BMS macro instruction, the op-code is DFHMSD, DFHMDI,
or DFHMDF. The op-codes for two assembler commands used in a
mapset are PRINT and END.
Parameters: The parameters (sometimes called as operands) provide
information that the instruction requires to work properly. They are
separated from one another by commas with no intervening
spaces. The first parameter should follow the op-code after one
space. Although parameters usually begin in column 16, the first
parameter following a BMS op-code begins in column 17 because
the BMS macro op-codes are all six characters long and start in
column 10.
Example: LENGTH= 16

Page - 03- 32
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.16: Example of BMS Macros

Illustration

Example:

1 10 16 17 72

MENU DFHMSD TYPE=&SYSPARM X


MODE=INOUT,
LANG=COBOL…..

Example of BMS Macros:


Continuation lines: To continue a statement on the next line, code a
comma after a parameter and place any non-blank character in
column 72(for example: X). The next parameter begins in column
16 of the following line. The following line is called as a
continuation line. It is recommended to code BMS macros with only
parameter per line to make mapsets easier to read.
Comment lines: Readability of a mapset can also be improved by
using comment lines to separate groups of related macros from one
another. A comment line is any line with * in column 1.

Page - 03- 33
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.17: Order of Map-Code

Illustration

Print Nogen ----> Assembler Command


Label DFHMSD ----> Mapset Definition

Label DFHMDI ----> Map Definition


DFHMDF ----> Field Definition
Label DFHMDF ----> Field Definition
Map1 |
|
|
DFHMDF

DFHMDI
Map2 DFHMDF
|
|
|
DFHMDF
DFHMSD Type = Final --> Mapset Defn
End ----------> Assembler command

Order of Map-Code:
➢ There is rule for the order of BMS macros, which must be followed.
That is, within one mapset definition, the map definition can be
specified as many times as you wish. Within one map definition,
the field definition can be specified as many times as you wish.

Page - 03- 34
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.18: Print NOGEN

Use of Print NOGEN

The PRINT NOGEN, causes the assembler not to print statements generated by the
BMS macro instructions. If you do not include a PRINT NOGEN command, your
assembler listing will contain hundreds of lines that are not important.
Hence it is recommended to start the mapsets with PRINT NOGEN command.

Page - 03- 35
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.19: END

Use of END

The last line in the mapset, that is END, is required.


END, like PRINT, is an assembler command.
Logically, it tells the assembler that there are no more source statements in the
mapset program.

Page - 03- 36
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.20: DFHMSD Macro

Concept of DFHMSD Macro

Function:
• The DFHMSD macro is used to define a mapset and its characteristics or to end a mapset
definition.
• Only one mapset definition is allowed within one assembly run.

Page - 03- 37
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.21: Format of DFHMSD Macro

The Format

Label DFHMSD
TYPE=DESECT|MAP|&SYSPARM|FINAL,
[MODE=IN|OUT|INOUT,]
[LANG=ASM|COBOL|PLI,]
[STORAGE=AUTO|BASE=name,]
[CTRL=(FREEKB, ALARM, FRSET),]

[HIGHLIGHT=OFF|BLINK|REVERSE|UNDERLINE,]
[VALIDN=MUSTFILL|MUSTENTER,]
[TERM=TYPE|SUFFIX=n,]
[TIOAPFX=YES|NO,]
[DATA=FIELD|BLOCK]

Page - 03- 38
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.21: Format of DFHMSD Macro

The Format

End of Mapset Definition:

DFHMSD TYPE=FINAL

Page - 03- 39
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.21: Format of DFHMSD Macro

The Format

The mapset name will appear in the PPT and in the copy statement for the symbolic
map in the COBOL application program.
• TYPE: The type parameter indicates whether a Physical Map(Type=MAP) or a symbolic Map
(Type=DSECT) is being generated. Type=&SYSPARM indicates that both will be generated.
• LANG: It specifies the language to be used for the symbolic map.

Page - 03- 40
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.21: Format of DFHMSD Macro

The Format

• MODE: It specifies whether the map is being used for input (IN) or output (OUT) or both.
• TERM: The term parameter specifies the type of terminal that the map can be used with:
• If you code ALL or 3270, then the map can be used with any type of terminal (even non-3270
devices).
• Although it is a bit less flexible, it is more efficient to specify the exact terminal type.
• CTRL parameter:
• FREEKB: To unlock the keyboard
• FRSET: To reset MDT to zero
• ALARM: To set an alarm at screen displaytime
• PRINT: To indicate the mapset to be sent to the printer

Format of DFHMSD Macro:


Term: The value that is specified for the term parameter affects the
name CICS assigns for physical map. CICS adds one character
suffix to the end of the mapset name for the physical map. The
exact character used depends on the terminal selected.
Example: For a mapset definition names MORSET1 the symbolic
map definition may be MORSET1 and a physical map definition
name may me MORSET1M (since M is the suffix for 3270 model 2
terminals).
Due to the suffix, it is possible to have several physical mapsets for a
single symbolic map. To use mapset MORSET1 on 3270 model1
terminals, all we need to do is change the term parameter to 3270-
1 and reassemble the map. BMS will then generate a physical
mapset named MORSETL. (L being the suffix for 3270 model1
terminals).
When the mapset is referred in the application program, the seven-
character name without the suffix is used. CICS automatically
retrieves the physical map that is appropriate for the terminal that
the program is running on, by appending the correct suffix.

Page - 03- 41
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
Format of DFHMSD Macro:
Example:
If the program is run on 3270 model1 terminal, then CICS retrieves the
mapset named MORSET1L.
If the program is run on 3270 model2 terminal, then CICS retrieves the
mapset named MORSET1M.
If CICS cannot locate the appropriate mapset, then it looks for a mapset
with no suffix. An un-suffixed mapset is generated with we code
TERM=ALL or TERM=3270. Such a maspset can be used for any
type of terminal.
To accommodate any terminal type, however considerable run-time
overhead is added to the mapset. Hence it is better to specify terminal
type in the mapset.

Page - 03- 42
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.21: Format of DFHMSD Macro

The Format

Format of DFHMSD Macro:


➢ CTRL: The CTRL parameter specifies the control options used by
the maps that a mapset defines. Alternatively, CTRL options can be
specified individually for each map on the DFHMDI macro. Since
the same control options apply to all the maps in a mapset, the
CTRL parameter can be coded on the DFHMSD macro.
➢ FREEKB: The most common CTRL option is FREEKB. If this is
specified, then the keyboard is unlocked whenever a map is sent to
the terminal. If FREEKB is not specified, then the keyboard is
locked and the operator must press the REST key to enter data.
➢ ALARM: The ALARM option causes the audio alarm to sound
whenever the map is sent to the terminal. In some installations, the
audio alarm is used to warn the operator of an error condition.
➢ FRSET: Suppose CTRL=FRSET is specified in the DFHMSD or
DFHMDI macro for a field. Then whenever the map is sent to the
terminal, MDT will be reset to “0” (off, that is, not modified) for all
the fields of the mapset or map respectively.

Page - 03- 43
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.21: Format of DFHMSD Macro

The Format

STORAGE: This parameter is used when more than one map set is defined in the
mapset. If storage = AUTO is coded, then the symbolic maps for maps in the
mapset will occupy separate storage locations.

TIOAPFX: If YES, it generates a 12-byte filler item at the beginning of the symbolic
map and should always be specified for COBOL maps.

Format of DFHMSD Macro:


➢ Storage: It indicates how storage will be allocated to the symbolic
map. If storage=AUTO is coded, then each symbolic map will have
its own storage area. If this clause is omitted, then the symbolic
maps will occupy the same storage locations.
➢ TIOAPFX: If the map is to be processed, then a command level
COBOL program, TIOAPFX = YES must be specified on DFHMSD
macro. The TIOAPFX parameter generates a 12 byte filler item at
the beginning of the symbolic map. The system uses those 12
bytes to maintain control information.

Page - 03- 44
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.22: DFHMDI Macro

Concept of DFHMDI Macro

Function:
• The DFHMDI macro is used to define a map and its characteristics in a mapset.

Page - 03- 45
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.23: Format of DFHMDI Macro

The Format

Label DFHMDI [SIZE=(LINE , COLUMN)]


[, LINE=number | NEXT | SAME]
[, LANG=ASM | COBOL | PLI ]
[, STORAGE=AUTO | BASE=name]
[, CTRL=([FREEKB] [, ALARM] [,
FRSET])]
[, VALIDN=MUSTFILL | MUSTENTER]
[, TERM=TYPE | , SUFFIX=n]
[, TIOAPFX=YES | NO]

Page - 03- 46
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.23: Format of DFHMDI Macro

The Format

The DFHMDI macro is used to define a map and its characteristics in a mapset.
• The LABEL must be specified as the symbolic name to the DFHMDI macro.
• SIZE(ll, cc) is used to define the size of the map by the line size (ll) and column size (cc).
• LINE and COLUMN indicates the starting position of the map in line and column numbers,
respectively.

Format of DFHMDI Macro:


The LABEL on the DFHMDI macro is the name of the map. This name
will be used for the map in the CICS program. Mapset name must
be unique within a CICS system. Similarly, map name must be
unique within a mapset.
The SIZE parameter specifies the number of lines and columns in the
map. The map can be smaller than the screen but usually the two
are of the same size. Hence SIZE=(24,80) is usually coded for
standard 24*80 screen.
Generally most maps start at first column of first line on the screen.
Hence LINE=1 and COLUMN =1 is usually coded.

Page - 03- 47
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.24: DFHMDF Macro (Function)

Concept of DFHMDF Macro

The DFHMDF macro is used to define a field in a map and its characteristics.
The DFHMDF macro can be issued as many times as you wish within one DFHMDI
macro.

Page - 03- 48
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.24: DFHMDF Macro (Function)

Format of DFHMDF Macro

LABEL POS=(line | column)


[, LENGTH=number]
[, JUSTIFY=([LEFT | RIGHT])
[, ATTRB=(ASKIP | PROT | UPROT [,
NUM]]
[, BRT | NORM | DRK]
[, IC][, FSET]) ]
[, HILIGHT=OFF | BLINK | REVERSE |
UNDERLINE]
[, VALIDN=([MUSTFILL | MUSTENTER])
[, OCCURS=number]
[, INITIAL=’value’]
[, PICIN=’value’][, PICOUT=’value’]

Page - 03- 49
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.24: DFHMDF Macro (Function)

Format of DFHMDF Macro

If the field name is required, then the name of the field (1 to 7 chars) must be
specified as the symbolic name to the DFHMDF macro.

POS=(line, column) indicates the starting position of the field in the line and column
number including the attribute character.\

The actual data field follows the attribute byte, so if you want a field to start in
column 5 of line 10, you code POS=(10,4).

Page - 03- 50
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.24: DFHMDF Macro (Function)

Format of DFHMDF Macro

• LENGTH indicates the length of the field EXCLUDING the attribute character.
• Hence if you specify LENGTH=5, you actually define six screen positions – five positions for the
field itself and one position for the attribute byte.
• INITIAL defines the initial value of the field (if any).
• PICIN and PICOUT defines the PICTURE clauses of the symbolic map in COBOL, which is
useful for numeric field editing.

Format of DFHMDF Macro:


DFHMDF POS=(5,13),
LENGTH=14
To calculate the next available position, add 14 plus 1 to the starting
column 13. In this example, the next available position is column 28 of
line 5.

Page - 03- 51
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
3.24: DFHMDF Macro (Function)

Format of DFHMDF Macro

• ATTRB specifies the characteristics of the attribute byte.


• Example: ATTRB=(ASKIP,BRT)
• The NUM option of the ATTRB parameter specifies a numeric protected field.
• FSET causes the MDT to be turned on before the map is send to a terminal.
• Usually it is not specified, since the MDT bit is set automatically when an operator enters data in an
unprotected field.
• However, if a protected field is to be transmitted to the program, then FSET option has to be
specified.

Format of DFHMDF Macro:


➢ ATTRB: The first set of options for the ATTRB parameter controls
the intensity attribute. The following can be coded:
– NORM: The field displays at Normal intensity.
– BRT: The field displays at Bright intensity.
– DRK: Field will not be displayed.
➢ If no intensity is specified, then NORM is assumed.
➢ The second set of options for the ATTRB parameter specifies a
fields protection attribute. The following can be coded:
– PROT: The field is protected. The user cannot enter data
into the field. It is the normal attribute for caption and display
only fields.
– ASKIP: It has the same effect as PROT, except that the
cursor automatically jumps over the field to the next
unprotected field.
– UNPROT: Field is unprotected. Data can be entered in the
field.

Page - 03- 52
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
Summary

Characteristics of 3270 display


Basic Mapping support
Mapsets and Maps
Physical Map and Symbolic Map
BMS Macros

Page - 03- 53
Customer Information Control System Data Communication Operation in CICS

Instructor Notes:
Review Questions

Question 1: The DFHMDI macro can be issued as many times as you


wish within one DFHMDF macro.
1. False • True/False
2. False
3. Physical Question 12: The map name must be registered in the PPT.
• True/False

Question 3: The ___ map indicates attributes of each field.

Page - 03- 54

You might also like