MAPs


CICS Maps are screen layouts designed for 3270 terminals used in CICS applications. A map defines the structure of a user interface (UI) in a CICS program, including text fields, input fields, labels, colors, and cursor positions.

MAP fits to the terminal screen display to send and retrieve the data. MAP size can be 24 by 80 or 27 by 132 based on the terminal size. Each column is accessible by the system to display the data to the user or retrieve the information entered by the user.

MAPs are grouped as MAPSET based on its characteristics and usage. Each MAP is designed with a set of fields for the retrieval or displaying data. MAP hierarchy is shown below -

map heirarchy

Maps are created by the assembler macros called Basic Mapping Support (BMS) macros, which separates screen design from application logic. Basic mapping support (BMS) is an application programming interface between CICS programs and terminal devices. This allows CICS programs to interact with users through formatted screens.


The BMS marco for the MAP needs to be compiled and link edited to create the executable load module of the map and map copybook, which is used to send data to the terminal or receive data from the terminal.

The MAP is divided into two types based on its creation and usage -

  • Physical MAP
  • Symbolic MAP

Both Physical and Symbolic MAPs are created after the MAP compilaton only.

Physical MAP -


  • The physical map is the load module produced after the link-edit process of the MAP.
  • The physical map controls the screen alignment of the MAP and represents the display format of the terminal.
  • Physical maps are used to display data to the terminal and receive data from the terminal.
  • After the successful compilation, the physical map is assembled and linked into the CICS LOAD LIBRARY. The physical map is stored in the same load library where the application program loads are stored.
  • It contains details of unnamed fields and named field attributes, positions, and lengths.

Symbolic MAP -


A symbolic map consists of all named fields specified with DFHMDF in the map definition, along with the programming language equivalent declaration. Each named field has five different extensions (in some compilers, those are seven with extended types), which are called symbolic variables for the named field. These symbolic variables are created automatically during the symbolic map generation.

The sub-divided variables for the named field are -

  • Input Variable (Extension: I)
  • Output Variable (Extension: O)
  • Field Variable (Extension: F)
  • Length Variable (Extension: L)
  • Attribute Variable (Extension: A)
  • Extended Color Variable (Extension: C)
  • Extended Highlight Variable (Extension: H)

We will discuss this topic in the next immediate chapter Symbolic MAP

Verifying the MAP display in CICS region -


Once the MAP is compiled without errors, we can check the MAP display in CICS region without using it in the application program. Follow the necessary steps below to see how the map look like after design -

  1. Open a CICS Region.
  2. Define MAPSET entry in CICS region.

    CEDA DEF MAPSet(mapset-name)

  3. Install Mapset entry in CICS region

    CEDA INS MAPset(mapset-name)

  4. Issue a new copy to the mapset after the clean compilation.

    CEMT SET Prog(mapset-name) NEW

    Once Mapset entry created, the entry will be treated as PPT entry only. So we need to use PROG instead of MAPSET while issuing new copy.

  5. Send the mapset using the below command to see the map and hit enter twise -

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