Top Banner
Basic Mapping Support Day2
32
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: PPT_TP01_CICS_02

Basic Mapping SupportDay2

Page 2: PPT_TP01_CICS_02

2Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Objectives

• Introduction to BMS– Screen Layout– Physical map and Symbolic map– Map and Mapset

• Creating a simple map– Map definition macros– Modified data tag and other attributes– Handling program attention keys

• Programming to use maps– SEND MAP command– RECEIVE MAP command– Data validation– Changing the attributes dynamically

Page 3: PPT_TP01_CICS_02

3Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

BMS – Basic Mapping Support

• An interface between CICS programs and the terminal devices

• In BMS, the design and format of the application can be separate from the logic

• BMS finds the device information from the terminal rather than the application program

Page 4: PPT_TP01_CICS_02

4Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Formatted Screens• Screens with fields in proper positions with

proper attributes.

• Require Buffer Control Characters (BCCs) to be sent along with data.

• The mixture of BCCs and TEXT is called as Native Mode Data Stream (NMDS) which depends on the protocol of the terminal being used.

Page 5: PPT_TP01_CICS_02

5Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

SCR1 MAIN MENU DATE: 04/03/98 TIME : 12:14:16

1. EMPLOYEE RECORD MAINTENANCE

2. EMPLOYEE DETAILS BROWSE

3. EXIT

SELECTION : - (1/2/3)

Your Choice PleaseF1 - HelpF1 - Help F3 - ExitF3 - Exit ENTER - ProcessENTER - Process

Formatted Screen - an Example

Page 6: PPT_TP01_CICS_02

6Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Physical Maps• Physical map contains the display format for the

map, for a given terminal, available as a load library member.– Length and location

– Attributes

– Constants

– Device characteristics

BMS macro codingBMS macro coding AssemblyAssembly LinkeditLinkedit

Load moduleLoad module LOADLIBLOADLIB To be used by CICSTo be used by CICS

Page 7: PPT_TP01_CICS_02

7Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Symbolic Maps• Symbolic map contains all variable data which is

copied into programs working storage section, available as copy library member.

BMS macro codingBMS macro coding AssemblyAssembly Symbolic map generationSymbolic map generation

COPYLIBCOPYLIB Copied (COPY) into CICS appl. programCopied (COPY) into CICS appl. program

Page 8: PPT_TP01_CICS_02

8Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

MAP & MAPSET

• MAP– is a single screen format

• MAPSET – is a collection of maps link-edited together to create a load module. – should have a PPT entry.

• Naming– 1 to 7 chars of generic name for maps and mapsets– 1 char added by CICS.

Page 9: PPT_TP01_CICS_02

9Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

BMS Assembly Language Program

• BMS map is a program written in Assembly Language to manage screens.

• The BMS Macros are – DFHMSD (Mapset definition)

– DFHMDI (Map definition)

– DFHMDF (Map Field definition)

Page 10: PPT_TP01_CICS_02

10Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

DFHMSD Parameters• TYPE=DSECT/MAP/&&SYSPARM/FINAL• MODE=IN/OUT/INOUT• LANG=ASM/COBOL/PL1• STORAGE=AUTO/BASE=name• CTRL=(PRINT,FREEKB,ALARM,FRSET)• TERM=terminal type,SUFFIX=n• TIOAPFX=YES/NO• MAPATTS=(COLOR,HIGHLIGHT,.......)• DSATTS=(COLOR,HIGHLIGHT,.......)

– COLOR=DEFAULT/colour– HIGHLIGHT=OFF/BLINK/REVERSE/UNDERLINE

Page 11: PPT_TP01_CICS_02

11Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Example of DFHMSD

DFHMSD TYPE=&&SYSPARM, X CTRL=(FREEKB,FRSET), X

LANG=COBOL, X STORAGE=AUTO, X TIOAPFX=YES, X MODE=INOUT,

X TERM=3270 DFHMSD TYPE=FINAL

END

Page 12: PPT_TP01_CICS_02

12Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

DFHMDI Parameters• SIZE=(LINE,COLUMN)• LINE=line-number• COLUMN=column-number• JUSTIFY=left/right• CTRL=(PRINT,FREEKB,ALARM,FRSET)• TIOAPFX=YES/NO• MAPATTS=(COLOR,HIGHLIGHT,.......)• DSATTS=(COLOR,HIGHLIGHT,.......)

– COLOR=DEFAULT/colour– HIGHLIGHT=OFF/BLINK/REVERSE/UNDERLINE

Page 13: PPT_TP01_CICS_02

13Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Example of DFHMDI

MAPNAME DFHMDI SIZE=(24,80), X

LINE=01, X

COLUMN=01, X

CTRL=(FREEKB,FRSET)

Page 14: PPT_TP01_CICS_02

14Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

DFHMDF Parameters• POS=(line,column)

• LENGTH=number

• INITIAL=‘text’

• JUSTIFY=(LEFT/RIGHT,BLANK/ZERO)

• ATTRB=(ASKIP/PROT/UNPROT, NUM, BRT/NORM/

DRK, IC, FSET)

• COLOR=DEFAULT/colour

• HIGHLIGHT=OFF/BLINK/REVERSE/UNDERLINE

• PICIN=‘value’

• PICOUT=‘value’

• OCCURS=n

Page 15: PPT_TP01_CICS_02

15Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Example of DFHMDF

DFHMDF POS=(01,01), LENGTH=4, X

INITIAL=‘SCR1’, X

ATTRB=(PROT,NORM)

DATEM DFHMDF POS=(01,70), LENGTH=08, X

ATTRB=(PROT,NORM)

DFHMDF POS=(01,79), LENGTH=1, X

ATTRB=ASKIP

Page 16: PPT_TP01_CICS_02

16Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

MDT - Modified Data Tag

• It is used to know whether the field is modified by the user or not.The field is only receivable if it has been modified.

Page 17: PPT_TP01_CICS_02

17Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

FORMAT OF SYMBOLIC MAP• A 12-byte TIOA (Terminal Input/Output Area) prefix.

• The mapnames are suffixed with ‘I’ and ‘O’

• When performing INPUT functions fields suffixed with ‘L’, ’F’ and ‘I’ are meaningful

• When performing OUTPUT functions fields suffixed with ‘A’, and ‘O’ are meaningful

Page 18: PPT_TP01_CICS_02

18Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Using OCCURS clause

• It is a tedious task to define different field names in a listing which are same and access them.

• To overcome this you use the OCCURS clause in the field and you can address the field by using the subscript.

Page 19: PPT_TP01_CICS_02

19Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

EXEC CICS SEND EXEC CICS SEND MAP(‘map name’)MAP(‘map name’) [MAPSET(‘mapset name’)][MAPSET(‘mapset name’)] [FROM(data-area)][FROM(data-area)] [LENGTH(data_value)][LENGTH(data_value)] [DATAONLY][DATAONLY] [MAPONLY][MAPONLY] [CURSOR][CURSOR] [ERASE/ERASEAUP][ERASE/ERASEAUP] [FREEKB][FREEKB] [FRSET][FRSET]END-EXECEND-EXEC

SEND MAP

Page 20: PPT_TP01_CICS_02

20Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Ex. EXEC CICS SEND Ex. EXEC CICS SEND MAP(‘EMPMAP’)MAP(‘EMPMAP’) MAPSET(‘EMPLIST’)MAPSET(‘EMPLIST’) ERASEERASE FREEKB FREEKB END-EXECEND-EXEC

SEND MAP

Page 21: PPT_TP01_CICS_02

21Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

EXEC CICS RECEIVE EXEC CICS RECEIVE MAP(‘map name’)MAP(‘map name’) [MAPSET(‘mapset name’)][MAPSET(‘mapset name’)] [INTO(data-area)][INTO(data-area)] [FROM(data-area)][FROM(data-area)] [LENGTH(data_value)][LENGTH(data_value)]END-EXECEND-EXEC

RECEIVE MAP

Page 22: PPT_TP01_CICS_02

22Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Ex. EXEC CICS RECEIVE Ex. EXEC CICS RECEIVE MAP(‘EMPMAP’)MAP(‘EMPMAP’) MAPSET(‘EMPLIST’)]MAPSET(‘EMPLIST’)] END-EXECEND-EXEC

RECEIVE MAP

Page 23: PPT_TP01_CICS_02

23Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Validate Fields

• Fields can be evaluated using the L, F or the I sub-fields

• The key pressed by the user is evaluated by using EIBAID

• CICS provides you with a pre-coded set which holds the symbolic values of attention identifier– COPY DFHAID (DFHENTER, DFHCLEAR, DFHPF1 etc)

Page 24: PPT_TP01_CICS_02

24Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Dynamic Cursor positioning.

• Move -1 to the symbolic map variable suffixed with L.

• Send the map with a CURSOR option in SEND MAP.

Page 25: PPT_TP01_CICS_02

25Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Dynamically changing attributes.• COPY DFHATTR in your program.

• Choose the attribute from the list you want to use and move it to the symbolic field variable suffixed with ‘A’.

• You can also do it by copying DFHBMSCA having different options.

Page 26: PPT_TP01_CICS_02

26Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

DFHBMSCA attribute values

Variable Protection Intensity Modified Data Tag (FSET/FRSET) DFHBMUNP Unprotected Normal Off DFHBMUNN Numeric Normal Off DFHBMPRO Protected Normal Off DFHBMASK Autoskip Normal Off DFHBMBRY Unprotected Bright Off DFHPROTI Protected Bright Off DFHBMASB Autoskip Bright Off DFHBMDAR Unprotected Non-display Off DFHPROTN Protected Non-display Off DFHBMFSE Unprotected Normal On DFHUNNUM Numeric Normal On DFHBMPRF Protected Normal On DFHBMASF Autoskip Normal On DFHUNIMD Unprotected Bright On DFHUNINT Numeric Bright On DFHUNNOD Unprotected Non-display On DFHUNNON Numeric Non-display On

Page 27: PPT_TP01_CICS_02

27Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Step 1: Open a tso session.Step 2: Create a new PDS.Step 3: Code the following mapset in a new member.

Sample mapset Development

Page 28: PPT_TP01_CICS_02

28Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Step 4: Assemble the mapset using the clist TRNGBMS.

Step 5: Open a CICS Session.

Step 6: Install the program using the command

CEMT SET PROG(mapset-name) NEW

Sample mapset Development

Page 29: PPT_TP01_CICS_02

29Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Step1: Open Client session for Mainframe, type CICS3 and hit ENTER key. Enter your User id and Password and press the Enter Key.

Execution of the sample mapset

Page 30: PPT_TP01_CICS_02

30Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Step 2: Type the command

CECI SEND MAP(map-name) MAPSET(mapset-name) ERASE FREEKB

Execution of the sample mapset

Page 31: PPT_TP01_CICS_02

31Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Summary• What is a BMS?

• What are the two kinds of maps? Why do we need them?

• What are the macros used to define?

• What is MDT, FSET and FRSET?

• What are the symbolic map fields generated?

• How to detect the key pressed?

• How to dynamically change the attributes of the fields?

• Sample Mapset development

Page 32: PPT_TP01_CICS_02

32Copyright © 2005, Infosys Technologies Ltd

ER/CORP/CRS/TP01/003 Version No: 1.0

Thank You!