Vous êtes sur la page 1sur 16

BMS Mapas para Telas 3270

BMS Mapas para Telas 3270


NDICE

Objetivo................................................................................................................................................................................3
Introduo.............................................................................................................................................................................4
BASIC MAPPING SUPPORT.............................................................................................................................................5
DEFINIO DE MAPAS....................................................................................................................................................5
CAMPOS 3270.....................................................................................................................................................................6
CAMPOS FORMATADOS 3270........................................................................................................................................7
ATRIBUTOS:.......................................................................................................................................................................8
DEFININDO UM MAPA.................................................................................................................................................... 9
COMPILAO DE UM MAPA....................................................................................................................................... 13
MAPAS E PROGRAMAS.................................................................................................................................................14
MAPA SIMBLICO..........................................................................................................................................................15

ELABORADO

POR

: ULISSES & MORAES INFORMTICA - TI

-2-

BMS Mapas para Telas 3270


Objetivo
Capacitar O Aluno a Ler/Desenvolver e dar Manuteno em Mapas (Telas) BMS Utilizadas
em Aplicaes CICS.

ELABORADO

POR

: ULISSES & MORAES INFORMTICA - TI

-3-

BMS Mapas para Telas 3270


Introduo
Este Manual Oferece uma Viso Geral de Comandos para Criao de Mapas BMS Utilizados
em Aplicaes Cics.

L/C 1...5...10...15...20...25...30...35...40...45...50...55...60...65...70...75...80
01 T071 XXXXXXXX
MANUTENCAO DE CADASTRO
DATA: 99/99/9999
02 MANUTENCAO
MENU
#20 TCCM071 HORA: 99:99:99
03 -----------------------------------------------------------------------------04
05
06
07
9 1 INCLUSAO
08
09
2 ALTERACAO
10
11
3 EXCLUSAO
12
13
4 CONSULTA
14
15
5 LISTA
16
17
6 SELECAO
18
19
20
21 -----------------------------------------------------------------------------22 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
23 F03-RETORNA
CLEAR-ENCERRA F12-FIM
24
1...5...10...15...20...25...30...35...40...45...50...55...60...65...70...75...80

ELABORADO

POR

: ULISSES & MORAES INFORMTICA - TI

-4-

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

BMS Mapas para Telas 3270


BASIC MAPPING SUPPORT
Basic Mapping Support (BMS), so mapas ou telas de terminal compostas de diversos
campos de dados formatados, isto , com posio fixa na tela.
Atravs dos mapas (interfaces), realizamos a apresentao de dados para o usurio em
um processo casado com um programa de aplicao.
O BMS a facilidade que o CICS fornece para trabalharmos com mapas.
O BMS trabalha com dados formatados, campos, constantes e variveis uma Interface
muito mais atrativa para o usurio.
Cada campo tem atributos prprios, visando facilitar o trabalho do usurio.

DEFINIO DE MAPAS
Para decidir como sero os mapas (telas de terminal) de determinada aplicao CICS,
necessrio que o analista (Funcional/Lgico) responsvel pela aplicao faa uma reunio
com os Gestores, a fim de saber quais so suas necessidades de informaes.
A partir desse ponto, ser necessrio fazer a definio dos mapas seguida de sua gerao.

ELABORADO

POR

: ULISSES & MORAES INFORMTICA - TI

-5-

BMS Mapas para Telas 3270


CAMPOS 3270
L/C 1...5...10...15...20...25...30...35...40...45...50...55...60...65...70...75...80
01 SI13
SISTEMA DE CONTROLE DE CARTAO DE CREDITO
99/99/9999
02 CEF CARTAO
CONSULTA CARTAO DE CREDITO CLIENTE
CAR013M 99:99:99
03 ------------------------------------------------------------------------------04
05 NOME..........: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
06
07 RG............: 99 . 999 . 999 9
08
09 CPF...........: 999 . 999 . 999 99
10
11
12
13
14
15
16
17
18
19
20
21
22 ------------------------------------------------------------------------------23 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
24 F3-RETORNA F6-LIMPA F12-FIM
1...5...10...15...20...25...30...35...40...45...50...55...60...65...70...75...80

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

Stopper (Delimitadores)
Um mapa composto por campos formatados 3270.
Cada campo tem uma posio fixa do buffer do terminal (tela), e delimitado por
atributos.
Um atributo ocupa o espao de um byte na tela do terminal, mas seu contedo no
visvel, j que estamos tratando do controle das caractersticas do campo.
Um mapa composto por campos formatados 3270.
Cada campo tem uma posio fixa no buffer do terminal (tela), e delimitado por
atributos.

ELABORADO

POR

: ULISSES & MORAES INFORMTICA - TI

-6-

BMS Mapas para Telas 3270


CAMPOS FORMATADOS 3270
L/C 1...5...10...15...20...25...30...35...40...45...50...55...60...65...70...75...80
01 SI13
SISTEMA DE CONTROLE DE CARTAO DE CREDITO
99/99/9999
02 CEF CARTAO
CONSULTA CARTAO DE CREDITO CLIENTE
CAR013M 99:99:99
03 ------------------------------------------------------------------------------04
05 NOME..........: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
06
07 RG............: 99 . 999 . 999 9
08
09 CPF...........: 999 . 999 . 999 99
10
11
12
13
14
15
16
17
18
19
20
21
22 ------------------------------------------------------------------------------23 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
24 F3-RETORNA F6-LIMPA F12-FIM
1...5...10...15...20...25...30...35...40...45...50...55...60...65...70...75...80

Constantes / Variveis

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

Podemos definir campos alfanumricos

Podemos definir campos numricos


Quando posicionamos o cursor, o mesmo se apresenta do primeiro byte.
Os campos podem ser, protegido ou desprotegido, normal, brilhante ou invisvel, Askip
etc..., tudo vai depender de que forma ser tratado os campos na tela.
A figura acima mostra o exemplo de um mapa.
Esse mapa formado por constantes e variveis, cada campo tem seu atributo.
Constantes tem atributo protegido ou askip.
Os campos variveis quando servirem para entrada de dados (input), devem ter atributo
desprotegido (numrico ou alfa).
Os campos numricos necessitam ter atributo numrico, para impedir que o usurio digite
caracteres no numricos.
Dependendo do terminal, ser possvel que campos numricos aceitem valores
alfanumricos, devemos atentar para o tratamento de consistncia dos campos da tela.

ELABORADO

POR

: ULISSES & MORAES INFORMTICA - TI

-7-

BMS Mapas para Telas 3270

Os delimitadores so campos de 1 byte, compostos apenas pelo atributo askip, e servem


para delimitar o tamanho do campo onde o usurio digitar informaes.

ATRIBUTOS:
UNPROTECTED / PROTECTED (UNPROT/PROT): usurio pode ou no digitar
informaes.
ASKIP: campo protegido, o cursor no pode ser posicionado nele.
NUM: dependendo do hardware permite ao usurio digitar apenas dados numricos.
NORMAL/BRIGHT/DARK (NO/BRT/DRK): campo com intensidade normal, brilhante ou
invisvel.
MDT ON/OFF: Se o MDT (Modified Data Tag) de um campo estiver ligado, o contedo
desse campo ser transmitido para o programa.
Se estiver desligado, o contedo no ser transmitido para o programa.

ELABORADO

POR

: ULISSES & MORAES INFORMTICA - TI

-8-

BMS Mapas para Telas 3270


DEFININDO UM MAPA
L/C 1...5...10...15...20...25...30...35...40...45...50...55...60...65...70...75...80
01 T071 XXXXXXXX
MANUTENCAO DE CADASTRO
DATA: 99/99/9999
02 MANUTENCAO
MENU
#20 TCCM071 HORA: 99:99:99
03 -----------------------------------------------------------------------------04
05
06
07
9 1 INCLUSAO
08
09
2 ALTERACAO
10
11
3 EXCLUSAO
12
13
4 CONSULTA
14
15
5 LISTA
16
17
6 SELECAO
18
19
20
21 -----------------------------------------------------------------------------22 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
23 F03-RETORNA
CLEAR-ENCERRA F12-FIM
24
1...5...10...15...20...25...30...35...40...45...50...55...60...65...70...75...80

Exemplo de um bms.
000001
000002
000003
000004
000005
000006
000007
000008
000009
000010
000011
000012
000013
000014
000015
000016
000017
000018
000019
000020
000021
000022
000023
000024
000025
000026
000027
000028
000029
000030
000031
000032
000033
000034
000035
000036
000037
000038

**-------------------------------------------------------------------**
* MAPA.......: TCCM071
*
* AUTOR......: DTS CONSULTING
*
* DATA.......: 20/05/2004
*
**-------------------------------------------------------------------**
*
CABECALHO PADRAO DO BMS
*
**-------------------------------------------------------------------**
*
TCCM071 DFHMSD CTRL=(FREEKB,FRSET),
LANG=COBOL,
MODE=INOUT,
TIOAPFX=YES,
TYPE=MAP
*
TCCM071 DFHMDI SIZE=(24,80)
*
**-------------------------------------------------------------------**
*
01A. LINHA
*
**-------------------------------------------------------------------**
*
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=4,
POS=(1,1),
INITIAL='T071'
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=1,
POS=(1,6),
INITIAL='-'
M071-USERID DFHMDF ATTRB=(PROT,FSET,NORM),
LENGTH=8,
POS=(1,8)
DFHMDF ATTRB=(ASKIP,BRT),
LENGTH=33,
POS=(1,23),
INITIAL='MANUTENCAO DE CADASTRO'
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=5,
POS=(1,63),
-

ELABORADO

POR

: ULISSES & MORAES INFORMTICA - TI

-9-

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

BMS Mapas para Telas 3270


000039
000040
000041
000042
000043
000044
000045
000046
000047
000048
000049
000050
000051
000052
000053
000054
000055
000056
000057
000058
000059
000060
000061
000062
000063
000064
000065
000066
000067
000068
000069
000070
000071
000072
000073
000074
000075
000076
000077
000078
000079
000080
000081
000082
000083
000084
000085
000086
000087
000088
000089
000090
000091
000092
000093
000094
000095
000096
000097
000098
000099
000100
000101
000102
000103
000104
000105
000106
000107
000108
000109
000110
000111
000112
000113

INITIAL='DATA:'
M071-DATA DFHMDF ATTRB=(PROT,FSET,NORM),
LENGTH=10,
POS=(1,69)
*
**-------------------------------------------------------------------**
*
02A. LINHA
*
**-------------------------------------------------------------------**
*
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=14,
POS=(2,1),
INITIAL='MANUTENCAO'
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=4,
POS=(2,33),
INITIAL='MENU'
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=11,
POS=(2,51),
INITIAL='#20 TCCM001'
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=5,
POS=(2,63),
INITIAL='HORA:'
M071-HORA DFHMDF ATTRB=(PROT,FSET,NORM),
LENGTH=8,
POS=(2,69)
*
**-------------------------------------------------------------------**
*
03A. LINHA
*
**-------------------------------------------------------------------**
*
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=79,
POS=(3,1),
INITIAL='------------------------------------------------------------------------------'
*
**-------------------------------------------------------------------**
*
07A. LINHA
*
**-------------------------------------------------------------------**
*
M071-OPC DFHMDF ATTRB=(UNPROT,FSET,NORM),
LENGTH=1,
POS=(7,27)
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=20,
POS=(7,29),
INITIAL='1 - INCLUSAO
'
*
**-------------------------------------------------------------------**
*
09A. LINHA
*
**-------------------------------------------------------------------**
*
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=20,
POS=(9,29),
INITIAL='2 - ALTERACAO
'
*
**-------------------------------------------------------------------**
*
11A. LINHA
*
**-------------------------------------------------------------------**
*
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=20,
POS=(11,29),
INITIAL='3 - EXCLUSAO
'
*
**-------------------------------------------------------------------**
*
13A. LINHA
*
**-------------------------------------------------------------------**
*
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=20,
-

ELABORADO

POR

: ULISSES & MORAES INFORMTICA - TI

- 10 -

BMS Mapas para Telas 3270


000114
000115
000116
000117
000118
000119
000120
000121
000122
000123
000124
000125
000126
000127
000128
000129
000130
000131
000132
000133
000134
000135
000136
000137
000138
000139
000140
000141
000142
000143
000144
000145
000146
000147
000148
000149
000150
000151
000152
000153
000154
000155
000156
000157
000158
000159
000160
000161
000162
000163
000164
000165
000166
000167
000168
000169
000170
000171

POS=(13,29),
INITIAL='4 - CONSULTA

'

*
**-------------------------------------------------------------------**
*
15A. LINHA
*
**-------------------------------------------------------------------**
*
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=20,
POS=(15,29),
INITIAL='5 - LISTA
'
*
**-------------------------------------------------------------------**
*
17A. LINHA
*
**-------------------------------------------------------------------**
*
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=20,
POS=(17,29),
INITIAL='6 - SELECAO
'
*
**-------------------------------------------------------------------**
*
22A. LINHA
*
**-------------------------------------------------------------------**
*
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=79,
POS=(22,1),
INITIAL='------------------------------------------------------------------------------'
*
**-------------------------------------------------------------------**
*
23A. LINHA
*
**-------------------------------------------------------------------**
*
M071-MSG DFHMDF ATTRB=(PROT,FSET,BRT),
LENGTH=78,
POS=(23,1)
*
**-------------------------------------------------------------------**
*
24A. LINHA
*
**-------------------------------------------------------------------**
*
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=11,
POS=(24,1),
INITIAL='F03-RETORNA'
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=13,
POS=(24,58),
INITIAL='CLEAR-ENCERRA'
DFHMDF ATTRB=(ASKIP,NORM),
LENGTH=7,
POS=(24,72),
INITIAL='F12=FIM'
DFHMSD TYPE=FINAL
*
END

Um MAPSET pode conter vrios MAPAS, mas muitas vezes contm apenas 1 mapa.
No podemos definir um MAPA sem definir tambm o MAPSET.
Para fazer a definio necessrio utilizarmos as macros BMS que o CICS fornece.
As macros so:
DFHMSD: define o mapset;
DFHMDI: define o mapa;
DFHMDF: define campos no mapa.
ELABORADO

POR

: ULISSES & MORAES INFORMTICA - TI

- 11 -

BMS Mapas para Telas 3270

O exemplo acima mostra a definio de um MAPSET chamado TCCM071.


Nesse MAPSET temos apenas um MAPA definido TCCM071.
Em seguida, temos as definies dos campos do MAPA.

O atributo IC, indica que neste campo ser posicionado o cursor.


Apenas um campo em cada mapa deve conter este atributo.

Podemos utilizar parmetros para definir a picture de edio do campo e tambm para
alinhamento e valorizao de caracteres no preenchidos.
PICOUT=Z,ZZ9,99 demonstrar para o usurio o campo com esta edio.
JUSTIFY=(LEFT,BLANK) ou JUSTIFY=(RIGHT,ZERO) alinhar o campo esquerda ou
direita e valorizar os caracteres no preenchidos com brancos ou zeros.

Se quisermos inserir neste Mapset mais um Mapa devemos colocar outro DFHMDI antes do
DFHMSD TYPE=FINAL.

ELABORADO

POR

: ULISSES & MORAES INFORMTICA - TI

- 12 -

BMS Mapas para Telas 3270


COMPILAO DE UM MAPA
Aps definir o Mapset/Mapa temos que fazer sua gerao.
Isso feito atravs da compilao do Mapset.
Essa compilao feita em duas fases:
1. fase: compilao e linkedio resultando em um mdulo executvel assembler que
catalogado em uma biblioteca de programas.
Esse mdulo chamado de Mapa Fsico composto pelas informaes definidas nas
macros.
Assim como os programas, os mapas fsicos dever ser definidos na PPT do CICS.
2 fase: compilao das macros, resultando no Mapa Simblico, que na verdade o Copy
book Cobol referenciando os campos que sero utilizados no programa.

ELABORADO

POR

: ULISSES & MORAES INFORMTICA - TI

- 13 -

BMS Mapas para Telas 3270


MAPAS E PROGRAMAS
Durante a compilao do programa, o COPY nome-do-mapset colocado na Workingstorage expande o Mapa Simblico, para podermos referenciar os campos do mapa.
Durante a execuo do programa, quando emitido um comando para receber ou enviar
um mapa, o Mapa fsico executado.
A seguir veremos o resultado da expanso do COPY TCCM071 codificado na working do
programa.

ELABORADO

POR

: ULISSES & MORAES INFORMTICA - TI

- 14 -

BMS Mapas para Telas 3270


MAPA SIMBLICO
COPY TCCM001.
000001
000002
000003
000004
000005
000006
000007
000008
000009
000010
000011
000012
000013
000014
000015
000016
000017
000018
000019
000020
000021
000022
000023
000024
000025
000026
000027
000028
000029
000030
000031
000032
000033
000034
000035
000036
000037
000038
000039

01

01

TCCM071I.
02 FILLER PIC X(12).
02 M071-USERIDL
COMP PIC S9(4).
02 M071-USERIDF
PICTURE X.
02 FILLER REDEFINES M071-USERIDF.
03 M071-USERIDA
PICTURE X.
02 M071-USERIDI PIC X(8).
02 M071-DATAL
COMP PIC S9(4).
02 M071-DATAF
PICTURE X.
02 FILLER REDEFINES M071-DATAF.
03 M071-DATAA
PICTURE X.
02 M071-DATAI PIC X(10).
02 M071-HORAL
COMP PIC S9(4).
02 M071-HORAF
PICTURE X.
02 FILLER REDEFINES M071-HORAF.
03 M071-HORAA
PICTURE X.
02 M071-HORAI PIC X(8).
02 M071-OPCL
COMP PIC S9(4).
02 M071-OPCF
PICTURE X.
02 FILLER REDEFINES M071-OPCF.
03 M071-OPCA
PICTURE X.
02 M071-OPCI PIC X(1).
02 M071-MSGL
COMP PIC S9(4).
02 M071-MSGF
PICTURE X.
02 FILLER REDEFINES M071-MSGF.
03 M071-MSGA
PICTURE X.
02 M071-MSGI PIC X(78).
TCCM071O REDEFINES TCCM071I.
02 FILLER PIC X(12).
02 FILLER PICTURE X(3).
02 M071-USERIDO PIC X(8).
02 FILLER PICTURE X(3).
02 M071-DATAO PIC X(10).
02 FILLER PICTURE X(3).
02 M071-HORAO PIC X(8).
02 FILLER PICTURE X(3).
02 M071-OPCO PIC X(1).
02 FILLER PICTURE X(3).
02 M071-MSGO PIC X(78).

Perceba que todos os campos que foram definidos com label no BMS aparecem no copy
book gerado.
Cada campo aparece 5 vezes, com sufixos diferentes.

I: INPUT
L: TAMANHO DO CAMPO RECEBIDO
F: FLAG X00 OU X80
A: ATRIBUTO
O: OUTPUT

ELABORADO

POR

: ULISSES & MORAES INFORMTICA - TI

- 15 -

BMS Mapas para Telas 3270


Como o mapa foi definido como INPUT/OUTPUT, a rea TESTMPI redefinida com o
nome TESTMPO (I=input/O=output).
Tomando como exemplo o campo nome, temos:
NOMEL: (L=LENGTH) esse campo ser alimentado pelo CICS com o tamanho do
contedo digitado pelo usurio em uma operao de Input;
NOMEF: (F=FLAG) em uma operao de Input, esse campo poder ter o contedo X00
ou ento X80 se o usurio digitar informaes no campo.
NOMEI: (I=INPUT) armazena o contedo de campo informado pelo usurio na tela.
NOMEA: (A=ATRIBUTO) o campo utilizado para alteraes de atributo.
NOMEO: (O=OUTPUT) contm a informao que queremos enviar para o terminal do
usurio.

1 Para ligar o MDT Utilize atributos com FSET


2 Para Limpar, Movimentar low-values para o nvel 01 do mapa, e enviar o mapa com send
map ERASE.

ELABORADO

POR

: ULISSES & MORAES INFORMTICA - TI

- 16 -

Vous aimerez peut-être aussi