-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathASME0601.ASM
More file actions
81 lines (81 loc) · 3.07 KB
/
ASME0601.ASM
File metadata and controls
81 lines (81 loc) · 3.07 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
***********************************************************************
* OBJETIVOS: LER UMA LISTA DE CPFS VIA SYSIN, REALIZAR A VERIFICACAO
* DOS DIGITOS, INFORNAR SE E VALIDO OU NAO.
* FAZ UM LINK A ROTINA ASMSCPF1 PARA REALIZACAO DO CALCULO
***********************************************************************
* PROCEDIMENTOS DE INICIALIZACAO DO PROGRAMA (LINKAGE CONVENTION)
***********************************************************************
ASME0601 AMODE 31
ASME0601 RMODE 24
ASME0601 CSECT
INICIO ASME0601,R12
***********************************************************************
* CORPO DO PROGRAMA
***********************************************************************
OPEN (SAIDA,OUTPUT)
OPEN (ENTRADA,INPUT)
LTR R15,R15
BNZ ROT_ABND
*
LER_CPF EQU *
GET ENTRADA,CPF_IN
*
LA R7,CPF_IN
LINK EP=ASMSCPF1
*
CLC CPF_IN,CPF_OUT
BNE CPF_INV
MVC MSG+1(11),CPF_IN
MVC MSG+13(27),=C'CPF INFORMADO VALIDO. '
B IMPR_CPF
CPF_INV EQU *
MVC MSG+1(11),CPF_IN
MVC MSG+13(27),=C'CPF INFORMADO NAO E VALIDO.'
*
IMPR_CPF EQU *
PUT SAIDA,MSG
*
B LER_CPF
***********************************************************************
* ROTINA DE ABEND
***********************************************************************
ROT_ABND EQU *
MVC MSG(12),=C'OPEN FALHOU.'
PUT SAIDA,MSG
***********************************************************************
* FINALIZA (FECHA) OS DATASETS
***********************************************************************
FIMARQ EQU *
CLOSE SAIDA
CLOSE ENTRADA
***********************************************************************
* PROCEDIMENTOS DE FINALIZACAO DO PROGRAMA (LINKAGE CONVENTION)
***********************************************************************
FIM
***********************************************************************
* DEFINICAO DE AREAS DE DADOS
***********************************************************************
CPFS DS 0CL22
CPF_IN DS CL11
CPF_OUT DS CL11
*
MSG DS CL80
*
ENTRADA DCB DDNAME=ENTRADA, *
DSORG=PS, *
MACRF=GM, *
RECFM=FB, *
LRECL=80, *
BLKSIZE=27920, *
EODAD=FIMARQ
*
SAIDA DCB DDNAME=SAIDA, *
DSORG=PS, *
MACRF=PM, *
RECFM=FBA, *
LRECL=80, *
BLKSIZE=4000
*
LTORG
*
END ASME0601