Учебники

CICS — BMS

BMS известен как поддержка основных карт. Приложение состоит из отформатированных экранов, которые служат мостом между терминалом и программами CICS. Для связи между терминалом и программами CICS мы используем услуги ввода / вывода терминала CICS. Мы используем BMS для создания дизайнов экрана с правильными позициями и атрибутами. Ниже приведены функции BMS —

  • BMS действует как интерфейс между терминалом и программами CICS.

  • Дизайн и формат экрана отделены от логики приложения.

  • BMS делает аппаратное обеспечение приложения независимым.

BMS действует как интерфейс между терминалом и программами CICS.

Дизайн и формат экрана отделены от логики приложения.

BMS делает аппаратное обеспечение приложения независимым.

Отформатированный экран

Показанный ниже экран является экраном меню и может быть спроектирован с использованием BMS. Его ключевые моменты заключаются в следующем —

  • На экране могут быть заголовок, дата и любая другая информация, которая должна отображаться.

  • Опция 1, 2 и 3 — это поля Безымянный, которые являются заголовками экрана.

  • В поле «Выбор» нам необходимо указать входные данные. Этот вход затем отправляется в программу CICS для дальнейшей обработки.

  • В нижней части экрана отображаются клавиши действий.

  • Все поля и сам экран определяются с помощью макросов BMS. Когда вся карта определена, мы можем использовать JCL для ее сборки.

На экране могут быть заголовок, дата и любая другая информация, которая должна отображаться.

Опция 1, 2 и 3 — это поля Безымянный, которые являются заголовками экрана.

В поле «Выбор» нам необходимо указать входные данные. Этот вход затем отправляется в программу CICS для дальнейшей обработки.

В нижней части экрана отображаются клавиши действий.

Все поля и сам экран определяются с помощью макросов BMS. Когда вся карта определена, мы можем использовать JCL для ее сборки.

Экран CICS

BMS Основные условия

Ниже приведены основные термины, которые мы будем использовать в следующих модулях.

карта

Карта — это одноэкранный формат, который может быть разработан с использованием макросов BMS. Может иметь имена, содержащие от 1 до 7 символов.

MAPSET

Mapset — это набор карт, которые связаны между собой, образуя модуль загрузки. Он должен иметь запись PPT. Может иметь имена от 1 до 7 символов.

BMS Macros

Карта BMS — это программа, написанная на языке ассемблера для управления экранами. Для определения экрана используются три макроса: DFHMSD, DFHMDI и DFHMDF.

DFHMSD

Макрос DFHMSD генерирует определение Mapset. Это макро-идентификатор, который показывает, что мы запускаем набор карт. Имя набора карт — это имя загружаемого модуля, и должна присутствовать запись в таблице PPT. В следующей таблице приведен список параметров, которые можно использовать в DFHMSD.

Sr.No Параметр и описание
1

ТИП

TYPE используется для определения типа карты. Если ТИП =
КАРТА — Физическая карта создана
DSECT — символическая карта создана
&& SYSPARM — Физический и символический, оба созданы
FINAL — для обозначения конца кодировки набора карт.

2

РЕЖИМ

MODE используется для индикации операций ввода / вывода. ЕСЛИ РЕЖИМ =
IN — только для входной карты
OUT — только для выходной карты
INOUT для карты ввода и вывода

3

LANG

LANG = ASM / COBOL / PL1
Он определяет язык структуры DSECT для копирования в прикладную программу.

4

МЕСТО ХРАНЕНИЯ

Если ХРАНЕНИЕ =
AUTO — получение отдельной символической области карты для каждого набора карт
BASE — иметь одну и ту же базу хранения для символических карт из более чем одного набора карт

5

CTRL

CRTL используется для определения запросов управления устройством. Если CTRL =
FREEKB — чтобы разблокировать клавиатуру
FRSET — для сброса MDT в нулевое состояние
ALARM — для установки будильника во время отображения экрана
ПЕЧАТЬ — для указания набора карт, который будет отправлен на принтер.

6

СРОК

TERM = тип обеспечивает независимость устройства, требуется, если используется терминал, отличный от 3270.

7

TIOAPFX

TIOAPFX = ДА / НЕТ
ДА — зарезервировать пространство префикса (12 байт) для команд BMS для правильного доступа к TIOA. Требуется для командного уровня CICS.

ТИП

TYPE используется для определения типа карты. Если ТИП =
КАРТА — Физическая карта создана
DSECT — символическая карта создана
&& SYSPARM — Физический и символический, оба созданы
FINAL — для обозначения конца кодировки набора карт.

РЕЖИМ

MODE используется для индикации операций ввода / вывода. ЕСЛИ РЕЖИМ =
IN — только для входной карты
OUT — только для выходной карты
INOUT для карты ввода и вывода

LANG

LANG = ASM / COBOL / PL1
Он определяет язык структуры DSECT для копирования в прикладную программу.

МЕСТО ХРАНЕНИЯ

Если ХРАНЕНИЕ =
AUTO — получение отдельной символической области карты для каждого набора карт
BASE — иметь одну и ту же базу хранения для символических карт из более чем одного набора карт

CTRL

CRTL используется для определения запросов управления устройством. Если CTRL =
FREEKB — чтобы разблокировать клавиатуру
FRSET — для сброса MDT в нулевое состояние
ALARM — для установки будильника во время отображения экрана
ПЕЧАТЬ — для указания набора карт, который будет отправлен на принтер.

СРОК

TERM = тип обеспечивает независимость устройства, требуется, если используется терминал, отличный от 3270.

TIOAPFX

TIOAPFX = ДА / НЕТ
ДА — зарезервировать пространство префикса (12 байт) для команд BMS для правильного доступа к TIOA. Требуется для командного уровня CICS.

пример

В следующем примере показано, как кодировать определение набора карт —

MPST01  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

DFHMDI

Макрос DFHMDI генерирует определения карт. Это показывает, что мы начинаем новую карту. За именем карты следует макрос DFHMDI. Название карты используется для отправки или получения карт. В следующей таблице показаны параметры, которые мы используем внутри макроса DFHMDI.

Sr.No Параметр и описание
1

РАЗМЕР

РАЗМЕР = (строка, столбец)
Этот параметр дает размер карты. BMS позволяет нам строить экран, используя несколько карт, и этот параметр становится важным, когда мы используем более одной карты в одном наборе карт.

2

ЛИНИЯ

Указывает начальный номер строки карты.

3

КОЛОНКА

Указывает начальный номер столбца карты.

4

ОПРАВДАТЬ

Он используется для указания всей карты или полей карты для выравнивания по левому или правому краю.

5

CTRL

CRTL используется для определения запросов управления устройством. Если CTRL =
FREEKB — чтобы разблокировать клавиатуру
FRSET — для сброса MDT в нулевое состояние
ALARM — для установки будильника во время отображения экрана
ПЕЧАТЬ — чтобы указать карту для отправки на принтер

6

TIOAPFX

TIOAPFX = ДА / НЕТ

ДА — зарезервировать пространство префикса (12 байт) для команд BMS для правильного доступа к TIOA. Требуется для командного уровня CICS.

РАЗМЕР

РАЗМЕР = (строка, столбец)
Этот параметр дает размер карты. BMS позволяет нам строить экран, используя несколько карт, и этот параметр становится важным, когда мы используем более одной карты в одном наборе карт.

ЛИНИЯ

Указывает начальный номер строки карты.

КОЛОНКА

Указывает начальный номер столбца карты.

ОПРАВДАТЬ

Он используется для указания всей карты или полей карты для выравнивания по левому или правому краю.

CTRL

CRTL используется для определения запросов управления устройством. Если CTRL =
FREEKB — чтобы разблокировать клавиатуру
FRSET — для сброса MDT в нулевое состояние
ALARM — для установки будильника во время отображения экрана
ПЕЧАТЬ — чтобы указать карту для отправки на принтер

TIOAPFX

TIOAPFX = ДА / НЕТ

ДА — зарезервировать пространство префикса (12 байт) для команд BMS для правильного доступа к TIOA. Требуется для командного уровня CICS.

пример

В следующем примере показано, как кодировать определение карты —

MAPSTD DFHMDI SIZE = (20,80), X
   LINE = 01, X
   COLUMN = 01, X
   CTRL = (FREEKB,FRSET)

DFHMDF

Макрос DFHMDF используется для определения имен полей. Упоминается имя поля, против которого закодирован макрос DFHMDF. Это имя поля используется внутри программы. Мы не пишем имя поля против постоянного поля, которое мы не хотим использовать внутри программы. В следующей таблице приведен список параметров, которые можно использовать внутри макроса DFHMDF.

Sr.No Параметр и описание
1

POS

Это позиция на экране, где должно появиться поле. Поле начинается с байта его атрибута, поэтому, если вы кодируете POS = (1,1), байт атрибута для этого поля находится в строке 1 в столбце 1, а фактические данные начинаются со столбца 2.

2

ДЛИНА

Это длина поля, не считая байта атрибута.

3

ИСХОДНЫЙ

Это символьные данные для поля вывода. Мы используем это, чтобы указать метки и заголовки для экрана и сохранить их независимыми от программы. Например, для первого поля на экране меню мы будем кодировать: INITIAL = ‘MENU’.

4

ОПРАВДАТЬ

Он используется для указания всей карты или полей карты для выравнивания по левому или правому краю.

5

ATTRB

ATTRB = (ASKIP / PROT / UNPROT, NUM, BRT / NORM / DRK, IC, FSET) Описывает атрибуты поля.

ASKIP — Autoskip. Данные не могут быть введены в это поле. Курсор переходит к следующему полю.

PROT — Защищенное поле. Данные не могут быть введены в это поле. Если данные введены, это вызовет состояние запрета ввода.

UNPROT — незащищенное поле. Данные могут быть введены, и это используется для всех полей ввода.

NUM — Числовое поле. Допускаются только цифры (от 0 до 9) и специальные символы (‘.’ И ‘-‘).

BRT — Яркое отображение поля (подсветка).

НОРМА — Нормальный дисплей.

DRK — темный дисплей.

IC — Вставить курсор. Курсор будет расположен в этом поле. Если IC указан более одного раза, курсор помещается в последнее поле.

FSET — Полевой набор. MDT установлен таким образом, чтобы данные поля отправлялись с терминала на хост-компьютер независимо от того, было ли поле фактически изменено пользователем.

6

PICIN

PICIN применяется к полю данных, которое используется в качестве ввода, например, PICIN = 9 (8).

7

PICOUT

PICIN применяется к полю данных, которое используется в качестве вывода, например PICOUT = Z (8).

POS

Это позиция на экране, где должно появиться поле. Поле начинается с байта его атрибута, поэтому, если вы кодируете POS = (1,1), байт атрибута для этого поля находится в строке 1 в столбце 1, а фактические данные начинаются со столбца 2.

ДЛИНА

Это длина поля, не считая байта атрибута.

ИСХОДНЫЙ

Это символьные данные для поля вывода. Мы используем это, чтобы указать метки и заголовки для экрана и сохранить их независимыми от программы. Например, для первого поля на экране меню мы будем кодировать: INITIAL = ‘MENU’.

ОПРАВДАТЬ

Он используется для указания всей карты или полей карты для выравнивания по левому или правому краю.

ATTRB

ATTRB = (ASKIP / PROT / UNPROT, NUM, BRT / NORM / DRK, IC, FSET) Описывает атрибуты поля.

ASKIP — Autoskip. Данные не могут быть введены в это поле. Курсор переходит к следующему полю.

PROT — Защищенное поле. Данные не могут быть введены в это поле. Если данные введены, это вызовет состояние запрета ввода.

UNPROT — незащищенное поле. Данные могут быть введены, и это используется для всех полей ввода.

NUM — Числовое поле. Допускаются только цифры (от 0 до 9) и специальные символы (‘.’ И ‘-‘).

BRT — Яркое отображение поля (подсветка).

НОРМА — Нормальный дисплей.

DRK — темный дисплей.

IC — Вставить курсор. Курсор будет расположен в этом поле. Если IC указан более одного раза, курсор помещается в последнее поле.

FSET — Полевой набор. MDT установлен таким образом, чтобы данные поля отправлялись с терминала на хост-компьютер независимо от того, было ли поле фактически изменено пользователем.

PICIN

PICIN применяется к полю данных, которое используется в качестве ввода, например, PICIN = 9 (8).

PICOUT

PICIN применяется к полю данных, которое используется в качестве вывода, например PICOUT = Z (8).

пример

В следующем примере показано, как кодировать определение поля —