Mapset containing a single map

The mapset listed in Figure 1 contains a simple map, MAPINQ1.
Figure 1. Sample Map Class—BMS Source
***************************************************************
*  cicssda  MAPINQ1  -- Wed  2 Aug 14:14:02 1995
***************************************************************
MAPINQ1 DFHMSD TYPE=&SYSPARM,MODE=INOUT,LANG=C,STORAGE=AUTO,TIOAPFX=YES
MAPINQ1 DFHMDI SIZE=(24,80),MAPATTS=(COLOR,HILIGHT,VALIDN),LINE=1,     X
               COLUMN=1,COLOR=NEUTRAL,HILIGHT=OFF
DTITLE  DFHMDF POS=(2,2),LENGTH=5,ATTRB=(PROT,NORM),COLOR=TURQUOISE,   X
               CASE=MIXED,INITIAL='Date:'
DATE    DFHMDF POS=(2,9),LENGTH=8,ATTRB=(PROT,BRT),CASE=MIXED
…
PRODNAM DFHMDF POS=(5,24),LENGTH=40,ATTRB=(PROT,BRT),CASE=MIXED
…
APPLID  DFHMDF POS=(15,15),LENGTH=8,ATTRB=(PROT,BRT),CASE=MIXED
…
MAPINQ1 DFHMSD TYPE=FINAL

The BMS Conversion Utility generates the C++ class definition (shown in Figure 2) from this mapset. The class name "MAPINQ1Map" is derived from the map name in the BMS source. The class inherits the CclMap class.

The class provides these main operations:
  1. The constructor MAPINQ1Map invokes the parent constructor, that validates the map object against the current screen.
  2. The method field provides access to fields in the map, using the BMS source field names (provided as an enumeration within the class).
Figure 2. Sample Map Class—Generated C++ Header
//************* CICS® Transaction Gateway Classes *************************************
//
// FILE NAME:   epiinq.hpp
//
// DESCRIPTION: C++ header for epiinq.bms
//              Generated by CICS BMS Conversion Utility - Version 1.0
//
//***********************************************************************
#include <cicsepi.hpp>                // CICS Transaction Gateway EPI classes
//-----------------------------------------------------------------------
// MAPINQ1Map class declaration
//-----------------------------------------------------------------------
class MAPINQ1Map : public CclMap {
public:
  enum           FieldName {
                   DTITLE,
                   DATE,
                   …
                   PRODNAM,
                   …
                   APPLID,
                   …
                 };
//-------------- Constructors/Destructors -------------------------------
                 MAPINQ1Map( CclScreen* screen );
                 ~MAPINQ1Map();
//-------------- Actions ------------------------------------------------
  CclField*      field( FieldName name );         // access field by name
…
}; // end class