Let's understand Mainframe
Home Tutorials Interview Q&A Quiz Mainframe Memes Contact us About us

Module 5: CICS BMS and Screens


What is BMS?

What is BMS

  • BMS stands for Basic Mapping Support.
  • It is an IBM-supplied facility of CICS that handles 3270 terminal screens for application programs.
  • With BMS, a program sends and receives screen data using simple field names, not screen positions or device control characters.
  • BMS converts the program's data into the 3270 data stream the terminal understands, and converts the terminal's input back into program data.

Why BMS is used

  • The screen layout is kept separate from the program logic.
  • The program does not need to know device-dependent details like screen size or control characters.
  • The same program can work with different 3270 terminal models.
  • A screen can be redesigned without changing the program - only the mapset is reassembled.

How BMS works

  • The programmer designs the screen and codes it with BMS macros (DFHMSD, DFHMDI, DFHMDF) to form a mapset.
  • The mapset is assembled to produce a physical map (the screen layout) and a symbolic map (a COBOL copybook).
  • The COBOL program includes the symbolic map with a COPY statement, then uses SEND MAP and RECEIVE MAP commands.
  • At run time, BMS merges the program's data with the physical map and displays it on the screen.






© copyright mainframebug.com
Privacy Policy
MainframeBug Assistant