100% found this document useful (1 vote)
168 views52 pages

How To Create A BMS Mapset: Cics, C4 © 2001, Mike Murach & Associates, Inc. Slide 1

The document discusses how to create a BMS mapset in CICS. It describes the function of attribute bytes, lists the BMS macros used to code a mapset, and provides guidelines for coding fields and function keys on a screen. Sample code is also shown for a DFHMDF macro that defines a data entry field.

Uploaded by

nishantk1
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
100% found this document useful (1 vote)
168 views52 pages

How To Create A BMS Mapset: Cics, C4 © 2001, Mike Murach & Associates, Inc. Slide 1

The document discusses how to create a BMS mapset in CICS. It describes the function of attribute bytes, lists the BMS macros used to code a mapset, and provides guidelines for coding fields and function keys on a screen. Sample code is also shown for a DFHMDF macro that defines a data entry field.

Uploaded by

nishantk1
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
You are on page 1/ 52

CICS, C4 2001, Mike Murach & Associates, Inc.

Slide 1
Chapter 4
How to create
a BMS mapset
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 2
Objectives
1. Describe the function of attribute bytes in a 3270 display.
2. List the three attributes controlled by standard attribute bytes.
3. Explain why two attribute bytes are required for an unprotected
field.
4. Explain the function of the Modified Data Tag.
5. List the three extended highlighting attributes.
6. List the three BMS macros and identify the function of each.
7. Describe the function of the fields generated in the symbolic map
for each named map field.
8. Explain when it is appropriate to use a programmer-generated
symbolic map.
9. Given a sample screen layout, code the BMS mapset for it.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 3
The screen layout for the customer
inquiry program
User
instructions
Map name Screen title
Captions
that identify
data
Data entered
by the user
Warning
messages
Attention key
assignments
Field required to prevent
a common error condition
Trans-id
Data displayed
by the program
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 4
Typical fields on a display screen
In a CICS program, the display screen is divided into user-defined
fields.
Each screen field is a specified area that contains a particular
category of information.
Display-only fields are used to display messages, captions, and
data that cant be changed by the user.
Data entry fields allow the user to enter data into the screen.
Each screen should end with a single-byte field that ensures that at
least one byte of data is sent to the program when the user presses
an attention key.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 5
Guidelines for the color and position of screen
fields
Field Design
Screen ID Line 1; Blue
Screen titles Line 1; Green
Instructions and emphasized text Neutral (white)
Captions that identify fields Green; Those that precede display-only fields
end with a colon, while those that precede data
entry fields end with a period
Variable data that the user enters (data
entry fields)
Turquoise; Underline fields so users can see
them easily
Variable data displayed by the program
that can change as the program
executes (display-only fields)
Turquoise
User entry errors Reverse video
Warning messages Line 23; Yellow with bright intensity
Function key assignments Line 24; Blue
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 6
Guidelines for function key assignments
Key Assignment
F1 Help: Provide online help for the program
F3 Exit: Exit from the program
F7 Backward: Display the previous screen or record, or scroll up
when theres more information than will fit on a screen
F8 Forward: Display the next screen or record, or scroll down when
theres more information than will fit on a screen
F12 Cancel: Return to previous screen or exit from the program if its
the first screen
Clear Clear: Erase any data from the unprotected fields on the screen
F2, F4, F5, F6, F9,
F10, F11
Unassigned: Use these keys for program-specific needs
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 7
The attribute bytes on a screen
An attribute byte
marks the beginning
of a display-only
field
Attribute bytes mark the beginning
and end of a data entry field
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 8
Field attributes
The location and characteristics of screen fields are determined by
special characters called attribute bytes. An attribute byte takes up
one position on the screen, but its displayed as a space.
A field starts immediately following its attribute byte and ends
immediately before the next fields attribute byte.
A data entry field requires two attribute bytes: one to mark the
beginning of the field, and the other to mark the end.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 9
Standard field attributes
Protection Shift Intensity
Unprotected Alphanumeric Normal
Protected Numeric Bright
Auto-skip Dark (No-display)
Description
Users can key data into an unprotected field, but not into a
protected field.
A skip field is skipped over and causes the cursor to automatically
advance to the next unprotected field.
The numeric option turns on the numeric lock feature (Num Lock)
on the terminal.
A dark, or no-display, field displays only spaces, no matter what
characters the field contains.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 10
The bit positions in an attribute byte
0 1 2 3 4 5 6 7
The contents of an attribute byte
Bit positions Functions Bit settings
0-1 Depends on the contents of bits 2-7
2-3 Protection and shift 00 = Unprotected alphanumeric
01 = Unprotected numeric
10 = Protected
11 = Protected skip
4-5 Intensity 00 = Normal
01 = Normal
10 = Bright
11 = Dark (No-display)
6 Must be 0
7 MDT 0 = Field has not been modified
1 = Field has been modified
Protection
and shift
Intensity
MDT
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 11
Extended attributes
Type of attribute Options
Extended color Blue Red Pink Green
Turquoise Yellow Neutral
Extended highlighting Blinking Causes the field to flash on the screen.
Reverse video Displays the field in dark characters against a
light backgroundthe opposite of the usual
display.
Underline Underlines the field.
Validation Must enter The user must enter at least one character of
data into the field.
Must fill The user must enter data into each character
position of the field.
Trigger The terminal transmits the fields contents as
soon as the user moves the cursor out of the
field.
Programmed symbols Up to 6 alternate user-definable character sets.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 12
The assembler commands and macros used in
BMS mapsets
Command or macro Usage
PRINT NOGEN Coded once at the beginning of the mapset; tells the
assembler not to print the statements generated as a result of
expanding the BMS macros that follow.
END Must be the last statement in the input stream; tells the
assembler that there are no more source statements.
DFHMSD Coded once; supplies values that apply to the entire mapset.
DFHMDI Coded once for each map within the mapset; supplies
values that apply to a single map.
DFHMDF Coded once for each field (or attribute byte) within the
map; specifies the position, length, and attributes of a
screen field.
DFHMSD TYPE=FINAL Coded after the last map in the mapset; tells BMS that the
mapset is complete.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 13
The general syntax of an assembler language
statement
label op-code parameters...
A DFHMDF macro that defines a data entry field
CUSTNO DFHMDF POS=(5,26), X
LENGTH=6, X
ATTRB=(NORM,UNPROT,IC), X
COLOR=TURQUOISE, X
INITIAL='______'
Description
The label begins in column 1 and supplies a symbolic name for
the statement.
The op-code specifies the instruction to be executed and begins in
column 10.
The parameters (or operands) provide the information the
instruction requires to work properly. The first parameter should
follow the op-code after one space.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 14
How to code assembler language statements
The parameters are separated from one another by commas with
no intervening spaces and can be coded in any order.
To specify a parameters value, use an equals sign. If more than
one value is required, separate the values with commas and
enclose them in parentheses.
If a value contains special characters or spaces, enclose it in single
quotes.
To include an apostrophe in a value, code two consecutive
apostrophes where you want the single apostrophe to appear.
To continue a statement on the next line, code a comma after the
parameter, place any non-blank character in column 72, and code
the next parameter starting in column 16 of the following line.
Any line with an asterisk in column 1 and a blank in column 72 is
treated as a comment line.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 15
The syntax of the DFHMSD macro
Format 1
name DFHMSD TYPE={&SYSPARM | DSECT | MAP},
LANG={COBOL | ASM | PLI | C | C++},
MODE={IN | OUT | INOUT},
TERM=terminal-type,
CTRL=(option,option...),
STORAGE=AUTO,
MAPATTS=(COLOR,HILIGHT),
DSATTS=(COLOR,HILIGHT),
TIOAPFX={YES | NO}
Format 2
DFHMSD TYPE=FINAL
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 16
Explanation of the DFHMSD macro
name The one- to seven-character name of the mapset. The mapset name must
be unique within a CICS system.
TYPE For format 1, specifies whether a physical map (MAP), symbolic map
(DSECT), or both (&SYSPARM) will be generated. For format 2, marks
the end of a mapset.
LANG Specifies the programming language.
MODE Specifies whether the mapset is used for input (IN), output (OUT), or both
(INOUT).
TERM Specifies the type of terminal that will be supported by the physical map
generated by this mapset.
CTRL Specifies a list of control options in effect for each map in the mapset.
Two common options are:
FREEKB Free the keyboard after each output operation.
ALARM Sound the audio alarm during each output operation.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 17
Explanation of the DFHMSD macro (continued)
STORAGE If STORAGE=AUTO is coded, the symbolic maps for the maps in the
mapset will occupy separate storage locations. Otherwise, theyll occupy
the same storage location.
MAPATTS Specifies which extended attributes should be supported by the physical
map.
DSATTS Specifies which extended attributes should be supported by the symbolic
map.
TIOAPFX YES generates a 12-byte FILLER item at the beginning of the symbolic
map that the system uses to maintain control information.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 18
The starting DFHMSD macro in the BMS mapset
for the inquiry program
INQSET1 DFHMSD TYPE=&SYSPARM, X
LANG=COBOL, X
MODE=INOUT, X
TERM=3270-2, X
CTRL=FREEKB, X
STORAGE=AUTO, X
TIOAPFX=YES
Description
When you specify LANG=COBOL, the symbolic map will be an
01-level group item that can be copied into a COBOL program.
If the CTRL options dont apply to all the maps in the mapset,
you can code them on the DFHMSD macro.
You should always code the FREEKB option of the CTRL
parameter so the keyboard is unlocked when a map is sent to the
terminal.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 19
The syntax of the DFHMDI macro
name DFHMDI SIZE=(lines,columns),
LINE=line-number,
COLUMN=column-number,
CTRL=(option,option...)
Explanation
name The one- to seven-character name of the map. Each map within a mapset
must have a unique name.
SIZE Specifies the size of the map in lines and columns.
LINE Specifies the line number on the screen where the map starts.
COLUMN Specifies the column number on the screen where the map starts.
CTRL Specifies a list of control options in effect for the map. Two common
options are:
FREEKB Free the keyboard after each output operation.
ALARM Sound the audio alarm during each output operation.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 20
The DFHMDI macro in the BMS mapset for the
inquiry program
INQMAP1 DFHMDI SIZE=(24,80), X
LINE=1, X
COLUMN=1
Description
You use the DFHMDI macro to define a map within a mapset.
The label on the DFHMDI macro is the name youll use to refer to
the map in your COBOL code.
If you dont code the CTRL parameter on the DFHMSD macro for
the entire mapset, you can code it on the DFHMDI macro for an
individual map.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 21
The syntax of the DFHMDF macro
name DFHMDF POS=(line,column),
LENGTH=field-length,
BRT PROT
ATTRB=( NORM , ASKIP ,NUM,IC,FSET),
DRK UNPROT
COLOR=color,
HILIGHT=highlight,
INITIAL='literal',
PICIN='picture-string',
PICOUT='picture-string',
GRPNAME=data-name
Explanation
name The 1- to 29-character name for the field. If omitted, the field is not
included in the symbolic map.
POS Specifies the line and column position of the attribute byte.
LENGTH Specifies the length of the field, not including the attribute byte.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 22
Explanation of the DFHMDF macro (continued)
ATTRB Specifies one or more attribute byte settings for the field.
BRT The field is displayed with high intensity.
NORM The field is displayed with regular intensity.
DRK The field is not displayed on the screen (its darkened).
PROT The field is protected; data may not be keyed into it.
ASKIP The field is protected, and the cursor will automatically skip over it.
UNPROT The field is unprotected; data may be keyed into it.
NUM Turns on the numeric lock feature so only numeric characters can be
entered; the field is right justified and zero filled. If omitted, the field is
assumed to be alphanumeric and is left justified and space filled.
IC Specifies that the cursor should be located at the start of the field.
FSET Specifies that the MDT bit in the attribute byte should be turned on before
the map is sent to the terminal.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 23
Explanation of the DFHMDF macro (continued)
COLOR Specifies the fields color. You may specify DEFAULT for the terminals
default color, or you may specify BLUE, RED, PINK, GREEN,
TURQUOISE, YELLOW, or NEUTRAL.
HILIGHT Specifies the fields extended highlighting. Valid highlighting options are
BLINK, REVERSE, UNDERLINE, and OFF.
INITIAL Specifies the starting value of the field. If omitted, the default is
hexadecimal zeros (Low-Value).
PICIN Specifies a COBOL picture string that defines the format of the data on
input, like PICIN='999V99'.
PICOUT Specifies a COBOL picture string that defines the format of the data on
output, like PICOUT='ZZZ,ZZ9.99'.
GRPNAME Specifies that the field should be grouped in the symbolic map with other
fields with the same GRPNAME. All fields within a group must be coded
in sequence in the mapset and must have labels.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 24
The DFHMDF macros that define a data entry field
in the inquiry program
CUSTNO DFHMDF POS=(5,26), X
LENGTH=6, X
ATTRB=(NORM,UNPROT,IC), X
COLOR=TURQUOISE, X
INITIAL='______'
DFHMDF POS=(5,33), X
LENGTH=1, X
ATTRB=ASKIP
Description
The DFHMDF macro defines an attribute byte for a screen field.
If you want to work with a screen field in your COBOL program,
you must code a name for it. Then, data items for the field are
generated in the symbolic map.
The IC option of the ATTRB parameter should be coded only for
the first data entry field on the screen.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 25
Description of the DFHMDF macro (continued)
The FSET option of the ATTRB parameter causes the MDT bit to
be turned on so that the field contents are transmitted back to the
program, regardless of whether theyre changed.
A field that contains hexadecimal zeros (Low-Value) is never
transmitted to the program.
If PICIN or PICOUT is omitted, X(n) will be the assumed picture,
where n is the LENGTH value.
To cause at least one byte of data to be sent to the program, the
last DFHMDF macro in a map should define a field named
DUMMY thats one byte long, has an initial value of space, and
has these attributes: DRK, PROT, and FSET.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 26
Example 1: A constant field (user instructions)
DFHMDF POS=(3,1), X
LENGTH=42, X
ATTRB=(NORM,PROT), X
COLOR=NEUTRAL, X
INITIAL='Type a customer number. Then press Enter.'
Example 2: An alphanumeric data entry field and
its caption
DFHMDF POS=(5,1), X
LENGTH=24, X
ATTRB=(NORM,PROT), X
COLOR=GREEN, X
INITIAL='Customer number. . . . .'
CUSTNO DFHMDF POS=(5,26), X
LENGTH=6, X
ATTRB=(NORM,UNPROT), X
COLOR=TURQUOISE, X
INITIAL='______'
DFHMDF POS=(5,33), X
LENGTH=1, X
ATTRB=ASKIP
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 27
Example 3: A numeric data entry field
QTY DFHMDF POS=(6,26), X
LENGTH=3, X
ATTRB=(NORM,NUM), X
COLOR=TURQUOISE, X
INITIAL='___'
DFHMDF POS=(6,30), X
LENGTH=1, X
ATTRB=ASKIP
Example 4: A display-only field with numeric
variable data and its caption
DFHMDF POS=(7,1), X
LENGTH=24, X
ATTRB=(NORM,PROT), X
COLOR=GREEN, X
INITIAL='Balance due. . . . . . :'
BALDUE DFHMDF POS=(7,26), X
LENGTH=13, X
ATTRB=(NORM,PROT), X
COLOR=TURQUOISE, X
PICOUT='ZZ,ZZZ,ZZ9.99'
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 28
Example 5: A message area, function key area,
and FSET field
MESSAGE DFHMDF POS=(23,1), X
LENGTH=79, X
ATTRB=(BRT,PROT), X
COLOR=YELLOW
DFHMDF POS=(24,1), X
LENGTH=20, X
ATTRB=(NORM,PROT), X
COLOR=BLUE, X
INITIAL='F3=Exit F12=Cancel'
DUMMY DFHMDF POS=(24,79), X
LENGTH=1, X
ATTRB=(DRK,PROT,FSET), X
INITIAL=' '
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 29
The screen layout for the key map
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 30
The screen layout for the data map
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 31
The BMS mapset for the maintenance program
PRINT NOGEN
MNTSET1 DFHMSD TYPE=&SYSPARM, X
LANG=COBOL, X
MODE=INOUT, X
TERM=3270-2, X
CTRL=FREEKB, X
STORAGE=AUTO, X
TIOAPFX=YES
***********************************************************************
MNTMAP1 DFHMDI SIZE=(24,80), X
LINE=1, X
COLUMN=1
***********************************************************************
DFHMDF POS=(1,1), X
LENGTH=7, X
ATTRB=(NORM,PROT), X
COLOR=BLUE, X
INITIAL='MNTMAP1'
DFHMDF POS=(1,20), X
LENGTH=20, X
ATTRB=(NORM,PROT), X
COLOR=GREEN, X
INITIAL='Customer Maintenance'
TRANID1 DFHMDF POS=(1,76), X
LENGTH=4, X
ATTRB=(NORM,PROT), X
COLOR=BLUE, X
INITIAL='XXXX'
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 32
The BMS mapset for the maintenance program
(continued)
***********************************************************************
DFHMDF POS=(3,1), X
LENGTH=63, X
ATTRB=(NORM,PROT), X
COLOR=NEUTRAL, X
INITIAL='Type a customer number. Then select an action X
and press Enter.'
DFHMDF POS=(5,1), X
LENGTH=24, X
ATTRB=(NORM,PROT), X
COLOR=GREEN, X
INITIAL='Customer number. . . . .'
CUSTNO1 DFHMDF POS=(5,26), X
LENGTH=6, X
ATTRB=(NORM,UNPROT,FSET), X
COLOR=TURQUOISE, X
HILIGHT=UNDERLINE
DFHMDF POS=(5,33), X
LENGTH=1, X
ATTRB=ASKIP
DFHMDF POS=(7,1), X
LENGTH=24, X
ATTRB=(NORM,PROT), X
COLOR=GREEN, X
INITIAL='Action . . . . . . . . .'
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 33
The BMS mapset for the maintenance program
(continued)
ACTION DFHMDF POS=(7,26), X
LENGTH=1, X
ATTRB=(NORM,NUM,FSET), X
COLOR=TURQUOISE, X
HILIGHT=UNDERLINE
DFHMDF POS=(7,28), X
LENGTH=21, X
ATTRB=(NORM,ASKIP), X
COLOR=NEUTRAL, X
INITIAL='1. Add a new customer'
DFHMDF POS=(8,28), X
LENGTH=30, X
ATTRB=(NORM,ASKIP), X
COLOR=NEUTRAL, X
INITIAL='2. Change an existing customer'
DFHMDF POS=(9,28), X
LENGTH=21, X
ATTRB=(NORM,ASKIP), X
COLOR=NEUTRAL, X
INITIAL='3. Delete an existing customer'
MSG1 DFHMDF POS=(23,1), X
LENGTH=79, X
ATTRB=(BRT,PROT), X
COLOR=YELLOW
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 34
The BMS mapset for the maintenance program
(continued)
DFHMDF POS=(24,1), X
LENGTH=20, X
ATTRB=(NORM,PROT), X
COLOR=BLUE, X
INITIAL='F3=Exit F12=Cancel'
DUMMY1 DFHMDF POS=(24,79), X
LENGTH=1, X
ATTRB=(DRK,PROT,FSET), X
INITIAL=' '
***********************************************************************
MNTMAP2 DFHMDI SIZE=(24,80), X
LINE=1, X
COLUMN=1
***********************************************************************
DFHMDF POS=(1,1), X
LENGTH=7, X
ATTRB=(NORM,PROT), X
COLOR=BLUE, X
INITIAL='MNTMAP2'
DFHMDF POS=(1,20), X
LENGTH=20, X
ATTRB=(NORM,PROT), X
COLOR=GREEN, X
INITIAL='Customer Maintenance'
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 35
The BMS mapset for the maintenance program
(continued)
TRANID2 DFHMDF POS=(1,76), X
LENGTH=4, X
ATTRB=(NORM,PROT), X
COLOR=BLUE, X
INITIAL='XXXX'
***********************************************************************
INSTR2 DFHMDF POS=(3,1), X
LENGTH=79, X
ATTRB=(NORM,PROT), X
COLOR=NEUTRAL
DFHMDF POS=(5,1), X
LENGTH=24, X
ATTRB=(NORM,PROT), X
COLOR=GREEN, X
INITIAL='Customer number. . . . :'
CUSTNO2 DFHMDF POS=(5,26), X
LENGTH=6, X
ATTRB=(NORM,PROT,FSET), X
COLOR=TURQUOISE
***********************************************************************
DFHMDF POS=(7,1), X
LENGTH=24, X
ATTRB=(NORM,PROT), X
COLOR=GREEN, X
INITIAL='Last name. . . . . . . .'
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 36
The BMS mapset for the maintenance program
(continued)
LNAME DFHMDF POS=(7,26), X
LENGTH=30, X
ATTRB=(NORM,UNPROT,FSET), X
COLOR=TURQUOISE, X
HILIGHT=UNDERLINE
DFHMDF POS=(7,57), X
LENGTH=1, X
ATTRB=ASKIP
***********************************************************************
DFHMDF POS=(8,1), X
LENGTH=24, X
ATTRB=(NORM,PROT), X
COLOR=GREEN, X
INITIAL='First name . . . . . . .'
FNAME DFHMDF POS=(8,26), X
LENGTH=20, X
ATTRB=(NORM,UNPROT,FSET), X
COLOR=TURQUOISE, X
HILIGHT=UNDERLINE
DFHMDF POS=(8,47), X
LENGTH=1, X
ATTRB=ASKIP
***********************************************************************
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 37
The BMS mapset for the maintenance program
(continued)
DFHMDF POS=(9,1), X
LENGTH=24, X
ATTRB=(NORM,PROT), X
COLOR=GREEN, X
INITIAL='Address. . . . . . . . .'
ADDR DFHMDF POS=(9,26), X
LENGTH=30, X
ATTRB=(NORM,UNPROT,FSET), X
COLOR=TURQUOISE, X
HILIGHT=UNDERLINE
DFHMDF POS=(9,57), X
LENGTH=1, X
ATTRB=ASKIP
***********************************************************************
DFHMDF POS=(10,1), X
LENGTH=24, X
ATTRB=(NORM,PROT), X
COLOR=GREEN, X
INITIAL='City . . . . . . . . . .'
CITY DFHMDF POS=(10,26), X
LENGTH=20, X
ATTRB=(NORM,UNPROT,FSET), X
COLOR=TURQUOISE, X
HILIGHT=UNDERLINE
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 38
The BMS mapset for the maintenance program
(continued)
DFHMDF POS=(10,47), X
LENGTH=1, X
ATTRB=ASKIP
***********************************************************************
DFHMDF POS=(11,1), X
LENGTH=24, X
ATTRB=(NORM,PROT), X
COLOR=GREEN, X
INITIAL='State. . . . . . . . . .'
STATE DFHMDF POS=(11,26), X
LENGTH=2, X
ATTRB=(NORM,UNPROT,FSET), X
COLOR=TURQUOISE, X
HILIGHT=UNDERLINE
DFHMDF POS=(11,29), X
LENGTH=1, X
ATTRB=ASKIP
***********************************************************************
DFHMDF POS=(12,1), X
LENGTH=24, X
ATTRB=(NORM,PROT), X
COLOR=GREEN, X
INITIAL='Zip Code . . . . . . . .'
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 39
The BMS mapset for the maintenance program
(continued)
ZIPCODE DFHMDF POS=(12,26), X
LENGTH=10, X
ATTRB=(NORM,UNPROT,FSET), X
COLOR=TURQUOISE, X
HILIGHT=UNDERLINE
DFHMDF POS=(12,37), X
LENGTH=1, X
ATTRB=ASKIP
***********************************************************************
MSG2 DFHMDF POS=(23,1), X
LENGTH=79, X
ATTRB=(BRT,PROT), X
COLOR=YELLOW
DFHMDF POS=(24,1), X
LENGTH=20, X
ATTRB=(NORM,PROT), X
COLOR=BLUE, X
INITIAL='F3=Exit F12=Cancel'
DUMMY2 DFHMDF POS=(24,79), X
LENGTH=1, X
ATTRB=(DRK,PROT,FSET), X
INITIAL=' '
***********************************************************************
DFHMSD TYPE=FINAL
END
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 40
The symbolic map for the maintenance program
01 MNTMAP1I.
03 FILLER PIC X(12).
03 TRANID1L PIC S9(4) COMP.
03 TRANID1F PIC X.
03 FILLER REDEFINES TRANID1F.
05 TRANID1A PIC X.
03 TRANID1I PIC X(4).
03 CUSTNO1L PIC S9(4) COMP.
03 CUSTNO1F PIC X.
03 FILLER REDEFINES CUSTNO1F.
05 CUSTNO1A PIC X.
03 CUSTNO1I PIC X(6).
03 ACTIONL PIC S9(4) COMP.
03 ACTIONF PIC X.
03 FILLER REDEFINES ACTIONF.
05 ACTIONA PIC X.
03 ACTIONI PIC X(1).
03 MSG1L PIC S9(4) COMP.
03 MSG1F PIC X.
03 FILLER REDEFINES MSG1F.
05 MSG1A PIC X.
03 MSG1I PIC X(79).
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 41
The symbolic map for the maintenance program
(continued)
03 DUMMY1L PIC S9(4) COMP.
03 DUMMY1F PIC X.
03 FILLER REDEFINES DUMMY1F.
05 DUMMY1A PIC X.
03 DUMMY1I PIC X(1).
01 MNTMAP1O REDEFINES MNTMAP1I.
03 FILLER PIC X(12).
03 FILLER PIC X(3).
03 TRANID1O PIC X(4).
03 FILLER PIC X(3).
03 CUSTNO1O PIC X(6).
03 FILLER PIC X(3).
03 ACTIONO PIC X(1).
03 FILLER PIC X(3).
03 MSG1O PIC X(79).
03 FILLER PIC X(3).
03 DUMMY1O PIC X(1).
01 MNTMAP2I.
03 FILLER PIC X(12).
03 TRANID2L PIC S9(4) COMP.
03 TRANID2F PIC X.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 42
The symbolic map for the maintenance program
(continued)
03 FILLER REDEFINES TRANID2F.
05 TRANID2A PIC X.
03 TRANID2I PIC X(4).
03 INSTR2L PIC S9(4) COMP.
03 INSTR2F PIC X.
03 FILLER REDEFINES INSTR2F.
05 INSTR2A PIC X.
03 INSTR2I PIC X(79).
03 CUSTNO2L PIC S9(4) COMP.
03 CUSTNO2F PIC X.
03 FILLER REDEFINES CUSTNO2F.
05 CUSTNO2A PIC X.
03 CUSTNO2I PIC X(6).
03 LNAMEL PIC S9(4) COMP.
03 LNAMEF PIC X.
03 FILLER REDEFINES LNAMEF.
05 LNAMEA PIC X.
03 LNAMEI PIC X(30).
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 43
The symbolic map for the maintenance program
(continued)
03 FNAMEL PIC S9(4) COMP.
03 FNAMEF PIC X.
03 FILLER REDEFINES FNAMEF.
05 FNAMEA PIC X.
03 FNAMEI PIC X(20).
03 ADDRL PIC S9(4) COMP.
03 ADDRF PIC X.
03 FILLER REDEFINES ADDRF.
05 ADDRA PIC X.
03 ADDRI PIC X(30).
03 CITYL PIC S9(4) COMP.
03 CITYF PIC X.
03 FILLER REDEFINES CITYF.
05 CITYA PIC X.
03 CITYI PIC X(20).
03 STATEL PIC S9(4) COMP.
03 STATEF PIC X.
03 FILLER REDEFINES STATEF.
05 STATEA PIC X.
03 STATEI PIC X(2).
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 44
The symbolic map for the maintenance program
(continued)
03 ZIPCODEL PIC S9(4) COMP.
03 ZIPCODEF PIC X.
03 FILLER REDEFINES ZIPCODEF.
05 ZIPCODEA PIC X.
03 ZIPCODEI PIC X(10).
03 MSG2L PIC S9(4) COMP.
03 MSG2F PIC X.
03 FILLER REDEFINES MSG2F.
05 MSG2A PIC X.
03 MSG2I PIC X(79).
03 DUMMY2L PIC S9(4) COMP.
03 DUMMY2F PIC X.
03 FILLER REDEFINES DUMMY2F.
05 DUMMY2A PIC X.
03 DUMMY2I PIC X(1).
01 MNTMAP2O REDEFINES MNTMAP2I.
03 FILLER PIC X(12).
03 FILLER PIC X(3).
03 TRANID2O PIC X(4).
03 FILLER PIC X(3).
03 INSTR2O PIC X(79).
03 FILLER PIC X(3).
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 45
The symbolic map for the maintenance program
(continued)
03 CUSTNO2O PIC X(6).
03 FILLER PIC X(3).
03 LNAMEO PIC X(30).
03 FILLER PIC X(3).
03 FNAMEO PIC X(20).
03 FILLER PIC X(3).
03 ADDRO PIC X(30).
03 FILLER PIC X(3).
03 CITYO PIC X(20).
03 FILLER PIC X(3).
03 STATEO PIC X(2).
03 FILLER PIC X(3).
03 ZIPCODEO PIC X(10).
03 FILLER PIC X(3).
03 MSG2O PIC X(79).
03 FILLER PIC X(3).
03 DUMMY2O PIC X(1).
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 46
Data name suffixes
Suffix Usage Example
L A binary halfword (PIC S9(4) COMP) that contains the length
of the data returned in the input field.
CUSTNO1L
LNAMEL
F A single-character field (PIC X) that contains hexadecimal 80 if
the user made a change to the field, but no data was transmitted;
otherwise, it contains Low-Value.
CUSTNO1F
LNAMEF
A A single-character field that contains the attribute byte for
output operations. Occupies the same storage location as the F
field.
CUSTNO1A
LNAMEA
C A single-character field that contains the attribute for extended
color. Generated only if DSATTS=COLOR is specified mapset.
CUSTNO1C
LNAMEC
H A single-character field that contains the attribute for extended
highlighting. Generated only if DSATTS=HILIGHT is
specified.
CUSTNO1H
LNAMEH
I The input data field. CUSTNO1I
LNAMEI
O The output data field. Occupies the same storage location as the
input field.
CUSTNO1O
LNAMEO
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 47
The fields in a symbolic map
The length field (suffix L) takes up two bytes of storage and
records the number of characters the user enters in the field. If the
user doesnt enter any data, the length field is set to zero.
The flag field (suffix F) contains a flag byte that is normally set to
Low-Value. But if the user modifies the input field without
entering data into it, the flag byte is set to hexadecimal 80.
The attribute field (suffix A) is used for output operations to
override the field attributes defined in the physical map.
If you specify extended attributes for the mapset, fields for those
attributes will appear in the symbolic map following the flag and
attribute fields. The two most common attributes are color (suffix
C) and highlighting (suffix H).
The input field (suffix I) and output field (suffix O) are generated
for the data field itself. They occupy the same storage location,
but allow the Picture clauses to differ for input and output.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 48
A programmer-generated symbolic map
01 MNTMAP1.
*
05 FILLER PIC X(12).
*
05 MNT1-L-TRANID1 PIC S9(4) COMP.
05 MNT1-A-TRANID1 PIC X.
05 MNT1-D-TRANID1 PIC X(4).
*
05 MNT1-L-CUSTNO1 PIC S9(4) COMP.
05 MNT1-A-CUSTNO1 PIC X.
05 MNT1-D-CUSTNO1 PIC X(6).
*
05 MNT1-L-ACTION PIC S9(4) COMP.
05 MNT1-A-ACTION PIC X.
05 MNT1-D-ACTION PIC X.
*
05 MNT1-L-MSG1 PIC S9(4) COMP.
05 MNT1-A-MSG1 PIC X.
05 MNT1-D-MSG1 PIC X(79).
*
05 MNT1-L-DUMMY1 PIC S9(4) COMP.
05 MNT1-A-DUMMY1 PIC X.
05 MNT1-D-DUMMY1 PIC X.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 49
Guidelines for creating your own symbolic map
1. Code only one 01-level item rather than separate 01-level items
that redefine one another for input and output purposes.
2. Code a 12-byte FILLER item for TIOAPFX at the beginning of
the map.
3. For each labeled map field, code a group of 05-level items,
following these rules to create the data names:
a. Start each name with a two- to four-character prefix that
relates the data name to the 01-level item.
b. Include one character to identify the fields function: L for the
length field, A for the attribute field, and D for the data field.
c. If you need different pictures for input and output, create a
fourth data name that redefines the data field. Then, identify
the input and output data fields with the characters I and O.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 50
Guidelines for creating your own symbolic map
(continued)
d. If you specified extended attributes with the DSATTS
parameter, insert fields for them between the attribute field and
the data field. Use the characters C and H to identify extended
color and extended highlighting attributes.
4. Separate each set of data names with a blank comment line.
5. Align the elements of the symbolic map so its easy to read.
Note
When you create your own symbolic map, its up to you to make
sure that any changes to the mapset are reflected in your symbolic
map.
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 51
An OS/390 procedure for preparing a mapset
//MM01MAPS JOB 36512,'R.MENENDEZ',MSGCLASS=X,CLASS=C,
// REGION=4M,NOTIFY=MM01
//MAPASM EXEC DFHMAPS,
// MAPLIB='MM01CICS.CICSTS13.LOADLIB', TARGET LOADLIB FOR MAP
// DSCTLIB='MM01.CICS.COPYLIB', TARGET COPYLIB FOR DSECT
// MAPNAME=ORDSET1 NAME OF MAPSET (REQUIRED)
//COPY.SYSUT1 DD DSN=MM01.CICS.SOURCE(ORDSET1),DISP=SHR MAPSET SOURCE
/*
CICS, C4 2001, Mike Murach & Associates, Inc. Slide 52
Description of the OS/390 procedure for preparing
a mapset
The JCL for preparing a mapset executes a cataloged procedure
named DFHMAPS. This procedure includes a step that creates a
physical map and a step that creates a symbolic map.
The MAPLIB parameter of the EXEC statement identifies the load
library where the physical map will be stored.
The DSCTLIB parameter of the EXEC statement identifies the
copy library where the symbolic map will be stored.
The MAPNAME parameter of the EXEC statement specifies the
name that will be given to the physical and symbolic maps.
The SYSUT1 DD statement identifies the library and member that
contains the source code for the mapset you want to assemble.

You might also like