View
57
Download
0
Category
Preview:
Citation preview
Prtica Assistida Primeira Entrega
Prtica Assistida
PROJETO: Debito Automtico TecBanco - PRIMEIRA ENTREGA: Consistncia Fsica e Lgica
Descrio da especificao
Implementao do mdulo de Dbito Automtico no Sistema de Conta Corrente do TecBanco (processamento Batch)
Objetivo
Processar as operaes de dbito em Conta Corrente a partir do recebimento do arquivo de Dbito Automtico
Entregveis
1. Lgica Estruturada e Teste de Mesa dos programas PRATxx10, PRATxx20 e PRATxx30 2. Books dos arquivos (ARQMOVxx , CADAGExx, CONTASxx e ARQCONxx), arquivos alocados
e com dados de teste, quando aplicvel 3. Programas PRATxx10 e PRATxx20 compilados e testados utilizando os books e arquivos
criados na Fase 2 4. Subprogramas PRATSExx e PRATDTxx compilados e testados com o programa PRATxx20.
E o programa PRATxx30 compilado e testado Programas
1. PRATxx10 - Consistncia Fsica 2. PRATxx20 - Consistncia Lgica 3. PRATSExx - Subprograma para validao e obteno do servio processado 4. PRATDTxx -Subprograma para validao da data do movimento 5. PRATxx30 - Gerao do arquivo Movimento Consistido
Alguns temas para pesquisa (recursos que sero usados na execuo do projeto)
Preparao e aplicao de Teste de Mesa
Boas tcnicas de programao COBOL
Padres de codificao de programas COBOL
Criao e utilizao de BOOKs
Definio e uso de condies atravs do nvel 88
Uso de CALL esttico e dinmico
Uso do IDCAMS
Uso de arquivos VSAM KSDS em programa COBOL
Analise do relatrio de compilao COBOL
Criao e alimentao de arquivos seqenciais via opo FMN do ISPF
Evidencias em teste (Teste Unitrio e Teste Integrado)
Anlise de DUMP via CEEDUMP
Job Control Language (JCL) Usuario TSO: ALxxTyy senha inicial: PRATICA
ONDE xx o sufixo do seu usurio TSO yy sua turma
Prtica Assistida
Bibliotecas de trabalho ASE. ALxxTyy.COBLIB ASE.ALxxTyy.JOBLIB IMPORTANTE: usurios e arquivos sem utilizao por prazo superior a 45 dias sero excludos. Prtica Assistida Macro Fluxo
PRATxx10
Consistencia Fsica
PRATxx30
Gerao do
Movimento
PRATxx40 e SORT
Classificao do
MOVCONxx
PRATxx50 e
MERGE
MOVANTxx e
MOVCLAxx
PRATxx60
Efetivao do
Dbito
(VSAM ou DB2)
PRATxx70
Relatrio Gerencial
(VSAM ou DB2)
PRATDTxx
PRATSExx
TECBANCO
DEBITO
AUTOMATICO
PRATxx20
Consistencia
Lgica
(VSAM ou DB2)
FIM
Prtica Assistida
Programa - PRATxx10 Objetivo: consistncia FSICA do movimento de dbito automtico gerado na agencia (ARQMOV10), emitindo relatrio dos registros consistidos (RELCON10).
Assegurar que: - o primeiro registro um HEADER e que o ltimo registro um TRAILER e que haja pelo menos um registro DETALHE; - o contedo dos campos numricos seja numrico e diferente de zero; - o contedo dos campos alfanumricos seja diferente de brancos (exceto FILLER); - que o nmero da conta corrente seja vlido, conforme regras do Mdulo 11 de verificao. (PESQUISAR E PREPARAR A ROTINA INTERNAMENTE)
Gerar relatrio com registros consistidos. Ao final do processamento exibir o total de registros lidos, impressos e o total de registros inconsistentes. OBSERVAES:
Exibir a MENSAGEM 1 no incio do processamento Se o arquivo de entrada estiver vazio exibir a MENSAGEM 2 e encerrar o processamento
com cdigo de retorno 4; Se houver ao menos uma inconsistncia nos dados arquivo, ao final do processamento,
exibir a MENSAGEM 3 e encerrar com cdigo de retorno 12; Se no houver inconsistncia nos dados arquivo, ao final do processamento, exibir a
MENSAGEM 4 e encerrar com cdigo de retorno 0 (default); Exibir a MENSAGEM 8 ao final do processamento (atualizar data e hora)
MENSAGENS: 1 PRATxx10 dd/mm/aaaa hh:mm:ss INICIO DO PROCESSAMENTO
2 PRATxx10 ARQUIVO ARQMOVxx VAZIO
3 PRATxx10 ARQUIVO ARQMOVxx INCONSISTENTE
4 PRATxx10 ARQUIVO ARQMOVxx CONSISTENTE
5 PRATxx10 TOTAL DE REGISTROS LIDOS......... xxxx
6 PRATxx10 TOTAL DE REGISTROS IMPRESSOS..... xxxx
7 PRATxx10 TOTAL DE REGISTROS INCONSISTENTES xxxx
8 PRATxx10 dd/mm/aaaa hh:mm:ss FINAL DO PROCESSAMENTO
Na ocorrncia de erros de acesso a arquivos enviar mensagem abaixo e encerrar o processamento com cdigo de retorno 12: ERRO NO ACESSO AO ARQUIVO xxxxxxx
OPERACAO xxxxxxx FILE STATUS xx
PRATxx10
ARQMOV10
MENSAGENS DO
PROCESSAMENTO
RELCON10
Prtica Assistida
DDNAME: RELCON10 Imprimir 60 linhas por pgina 1...5...10....5...20....5...30....5...40....5...50....5...60....5...70....5...80
DD/MM/AAAA TECBANCO CONSISTENCIA FISICA NO ARQUIVO ARQMOVxx PAG. 99
CB-DATA CB-PAG
REGISTRO HEADER
SERVICO xx DATA DO MOVIMENTO dd/mm/aaaa
DT-SERVICO DT-DATAMOV
AGENCIA 9999 OCORRENCIA x...............x
DT-NAGENCIA DT-OCORRENCIAH
REGISTRO DETALHE
CONTA 99.999-9 VALOR Z.ZZZ.ZZ9,99 OCORRENCIA: x.............x
CONTA 99.999-9 VALOR Z.ZZZ.ZZ9,99 OCORRENCIA: x.............x
CONTA 99.999-9 VALOR Z.ZZZ.ZZ9,99 OCORRENCIA: x.............x
DT-NCONTA DT-VALOR DT-OCORRENCIAD
REGISTRO TRAILER
TOTAL DE REGISTROS ZZZ.ZZZ VALOR DOS LANCAMENTOS ZZZ.ZZZ.ZZ9,99
DT-TOTREG DT-TOTLANCAMENTOS
OCORRENCIA: x.............x
DT-OCORRENCIAT
1...5...10....5...20....5...30....5...40....5...50....5...60....5...70....5...80
OBSERVAES: Ocorrncias registros HEADER: HEADER OK / ERRO SERVICO / ERRO DATA / ERRO AGENCIA Ocorrncias registros DETALHE: DETALHE OK / ERRO CONTA / ERRO VALOR / ERRO CTA - VLR Ocorrncias registros TRAILER: TRAILER OK / ERRO QTD REG / ERRO VLR TOTAL
Prtica Assistida
Arquivo Movimento - sequencial Nome do book: ARQMOVxx DDNAME: ARQMOV10 - DSNAME: ASE.ALxxTyy.ARQMOVSQ Header
Informao Nome do campo Formato Tamanho Decimais Valor
Tipo do registro HEADER-MVCC ALFANUMERICO 1 - H
Agencia CODAGE-MVCC NUMERICO 4 0
Tipo servio TIPOSERV-MVCC ALFANUMERICO 2 -
Data Movimento DATAMOV-MVCC NUMERICO 8 0
filler ALFANUMERICO 5
Tamanho registro 20
Data Movimento: DDMMAAAA Detalhe
Informao Nome do campo Formato Tamanho Decimais Valor
Tipo do registro DETALHE-MVCC ALFANUMERICO 1 - D
Conta NCONTA-MVCC NUMERICO 6 0
Valor VALORL-MVCC NUMERICO 9 2
filler ALFANUMERICO 4
Tamanho registro 20
Trailer
Informao Nome do campo Formato Tamanho Decimais Valor
Tipo do registro TRAILER-MVCC ALFANUMERICO 1 - T
Total de registros TOTREG-MVCC NUMERICO 6 0
Valor lanamentos TOTLANC-MVCC NUMERICO 11 2
filler ALFANUMERICO 2
20
DDNAME: ARQMOV10 - DSNAME: ASE.ALxxTyy.ARQMOVSQ
HEADER (H) TAMANHO 20 POSIES
HEADER-MVCC CODAGE-MVCC TIPOSERV-MVCC DATAMOV-MVCC
X(001) 9(004) X(002) 9(008) X(005)
DETALHE (D) TAMANHO 20 POSICES
DETALHE-MVCC NCONTA-MVCC VALORL-MVCC
X(001) 9(006) 9(007)v99 X(004)
TRAILER (T) TAMANHO 20 POSIES
TRAILER-MVCC TOTREG-MVCC TOTLANC-MVCC
X(001) 9(006) 9(009)v99 X(002)
Prtica Assistida
Programa PRATxx20 Objetivo: consistncia LGICA do movimento de dbito automtico gerado na agencia (ARQMOV20), emitindo relatrio dos registros consistidos (RELCON20).
Regras de Consistncia
Arquivo ARQMOV20 - Primeiro registro deve ser HEADER e o ltimo TRAILER No registro HEADER proceder conforme segue:
O cdigo da agencia deve corresponder a uma agncia vlida e ativa no Cadastro de Agencias (CADAGE20).
O cdigo do tipo de servio deve corresponder a um servio vlido (consistir atravs de chamada ao subprograma PRATSExx). Usar PRATSE99 para teste inicial.
A data do movimento deve corresponder a uma data valida (consistir atravs de chamada ao subprograma PRATDTxx), igual ou menor a data do processamento. Usar PRATDT99 para teste inicial.
No registro DETALHE consistir conforme segue:
Verificar se a conta vlida e ativa, acessando o cadastro de Contas (CONTAS20) No registro TRAILER consistir conforme segue:
A soma dos registros no arquivo (HEADER, DETALHES e TRAILER) deve ser igual ao total de registros indicados no TRAILER
A soma dos valores dos lanamentos (registros DETALHE) deve ser igual ao valor total indicado no TRAILER
Gerar relatrio com registros consistidos. Ao final do processamento exibir o total de registros lidos, impressos e o total de registros inconsistentes. OBSERVAES:
Exibir a MENSAGEM 1 no inicio do processamento Se o arquivo de entrada estiver vazio exibir a MENSAGEM 2 e encerrar o processamento
com cdigo de retorno 4;
CA
D
AG
E20
VS
AM
KS
DS PRATSExx
PRATDTxx
PRATxx20
ARQMOV20
MENSAGENS DO
PROCESSAMENTO
RELCON20
CO
N
TA
S2
0
VS
AM
KS
DS
Prtica Assistida
Se houver ao menos uma inconsistncia nos dados arquivo, ao final do processamento, exibir a MENSAGEM 3 e encerrar com cdigo de retorno 12;
Se no houver inconsistncia nos dados arquivo, ao final do processamento, exibir a MENSAGEM 4 e encerrar com cdigo de retorno 0 (default);
Exibir a MENSAGEM 8 ao final do processamento (atualizar data e hora) Na ausncia de HEADER, DETALHE ou TRAILER emitir a mensagem 9 e encerrar o
processamento com cdigo de retorno 16. MENSAGENS: 1 PRATxx20 dd/mm/aaaa hh:mm:ss INICIO DO PROCESSAMENTO
2 PRATxx20 ARQUIVO ARQMOVxx VAZIO
3 PRATxx20 ARQUIVO ARQMOVxx INCONSISTENTE
4 PRATxx20 ARQUIVO ARQMOVxx CONSISTENTE
5 PRATxx20 TOTAL DE REGISTROS LIDOS......... xxxx
6 PRATxx20 TOTAL DE REGISTROS IMPRESSOS..... xxxx
7 PRATxx20 TOTAL DE REGISTROS INCONSISTENTES xxxx
8 PRATxx20 dd/mm/aaaa hh:mm:ss FINAL DO PROCESSAMENTO
Na ocorrncia de erros de acesso a arquivos enviar mensagem abaixo e encerrar o processamento com cdigo de retorno 12: ERRO NO ACESSO AO ARQUIVO xxxxxxx
OPERACAO xxxxxxx FILE STATUS xx
Chamadas aos subprogramas: PRATSExx utilizar CALL DINAMICO rea de comunicao (book PRATSEAC) 01 PRATSERV-COM. 10 PRATSERV-TIPOSERV-COM PIC X(0002). 10 PRATSERV-NOMESERV-COM PIC X(0008). 10 PRATSERV-CODRET-COM PIC X(0002). 88 PRATSERV-OK VALUE OK. 88 PRATSERV-ERRO VALUE **. PRATDTxx utilizar CALL ESTTICO rea de comunicao (book PRATDTAC) 01 PRATDATA-DATA-COM PIC 9(0008). DDMMAAAA 01 PRATDATA-CODRET-COM PIC X(0002). 88 PRATDATA-OK VALUE OK. 88 PRATDATA-ERRO VALUE **. OBS.: criar os books em sua biblioteca ASE.ALxxTyy.COBLIB
Prtica Assistida
DDNAME: RELCON20 Imprimir 60 linhas por pgina 1...5...10....5...20....5...30....5...40....5...50....5...60....5...70....5...80
DD/MM/AAAA TECBANCO CONSISTENCIA LGICA NO ARQUIVO ARQMOVxx PAG. 99
CB-DATA CB-PAG
REGISTRO HEADER
SERVICO xx - x......x DATA DO MOVIMENTO dd/mm/aaaa
DT-SERVICO* DT-DATAMOV
AGENCIA 9999 x............................x SITUACAO x.....x
DT-NAGENCIA DT-NOME-AGENCIA DT-SITUACAOH
OCORRENCIA: x.............x
DT-OCORRENCIAH
REGISTRO DETALHE
CONTA 99.999-9 VALOR Z.ZZZ.ZZ9,99 OCORRENCIA: x.............x
CONTA 99.999-9 VALOR Z.ZZZ.ZZ9,99 OCORRENCIA: x.............x
CONTA 99.999-9 VALOR Z.ZZZ.ZZ9,99 OCORRENCIA: x.............x
DT-NCONTA DT-VALOR DT-OCORRENCIAD
REGISTRO TRAILER
TOTAL DE REGISTROS ZZZ.ZZZ
DT-TOTREG
TOTAL DOS LANCAMENTOS ZZZ.ZZZ.ZZ9,99
DT-TOTLANCAMENTOS
OCORRENCIA: x.............x
DT-OCORRENCIAT
1...5...10....5...20....5...30....5...40....5...50....5...60....5...70....5...80
DT-SERVICO* - informar cdigo do servio e nome OBSERVAES: Ocorrncias registros HEADER: HEADER OK / ERRO SERVICO / ERRO DATA / ERRO AGENCIA/ AG. INATIVA Ocorrncias registros DETALHE: DETALHE OK / CONTA INATIVA / CTA INEXISTENTE Ocorrncias registros TRAILER: TRAILER OK / ERRO QTD REG / ERRO VLR TOTAL
Prtica Assistida
Arquivo Movimento DDNAME: ARQMOV20 conforme definido no programa PRATxx10 Cadastro de Agencias VSAM KSDS Nome do book: CADAGExx DDNAME: CADAGE20 - DSNAME: ASE.ALxxTyy.CADAGEVS
Informao Nome do campo Formato Tamanho Decimais
Agencia (chave) CODAGE-CAGE NUMERICO 4 0
Nome NOMAGE-CAGE ALFANUMERICO 30 -
Situao SITUAGE-CAGE ALFANUMERICO 1 -
Telefone TELEFONE-CAGE NUMERICO 8 0
filler ALFANUMERICO 2
Tamanho registro 45
Situao: A ATIVA I INATIVA DDNAME: CADAGE20 - DSNAME: ASE.ALxxTyy.CADAGEVS
CODAGE-CAGE NOMAGE-CAGE SITUAGE-CAGE TELEFONE-CAGE
9(004) X(030) X(001) 9(008) X(002)
Cadastro de Contas VSAM KSDS Nome do book: CONTASxx DDNAME: CONTAS20 - DSNAME: ASE.ALxxTyy.CONTASVS
Informao Nome do campo Formato Tamanho Decimais
Agencia (chave) CODAGE-CADC NUMERICO 4 0
Conta (chave) NCONTA-CADC NUMERICO 6 0
Tipo TIPOCTA-CADC NUMERICO 1 0
Nome NOMECL-CADC ALFANUMERICO 30 -
CPF CPFCTA-CADC NUMERICO 11 0
Situao SITUCTA-CADC ALFANUMERICO 1 -
Data abertura DATACTA-CADC NUMERICO 8 0
Saldo SALDOCTA-CADC NUMERICO 11 2
Limite LIMITECTA-CADC NUMERICO 11 2
filler ALFANUMERICO 2
Tamanho registro 85
Tipo: 1 Conta Comum 2 Conta Especial 3 Conta Poupana Situao: A Ativa, I Inativa, B bloqueada Data abertura(DATACTA-CADC): DDMMAAAA
DDNAME: CONTAS20 - DSNAME: ASE.ALxxTyy.CONTASVS
CODAGE-
CADC
NCONTA-
CADC
TIPOCTA-
CADC
NOMECL-
CADC
CPFCTA-
CADC
SITUCTA-
CADC
DATACTA-
CADC
SALDOCTA-
CADC
LIMITECTA-
CADC
9(004) X(030) X(001) 9(008) X(002) X(001) 9(008) 9(009)V99 9(009)V99 X(002)
Prtica Assistida
Subprograma - PRATSExx Objetivo: subprograma para consistncia do tipo de servio recebido na LINKAGE SECTION, com devoluo de informao sobre a validade e nome do mesmo.
TIPO
NOME
RETORNO
PRATSExx
rea de comunicao (book PRATSEAC) book criado no programa PRATxx20 01 PRATSERV-COM. 10 PRATSERV-TIPOSERV-COM PIC X(0002). 10 PRATSERV-NOMESERV-COM PIC X(0008). 10 PRATSERV-CODRET-COM PIC X(0002). 88 PRATSERV-OK VALUE OK. 88 PRATSERV-ERRO VALUE **. Descrio do Processamento o tipo de servio informado no campo PRATSERV-TIPOSERV-COM deve constar de tabela
interna, onde estar o nome do servio que ser retornado ao programa principal no campo PRATSERV-NOMESERV-COM.
Retorno: Se o tipo de servio existir na tabela interna, alm de mover o nome do servio, o programa
deve tornar verdadeira a condio PRATSERV-OK (veja o uso do nvel 88), caso contrario, o programa deve mover * para todos os bytes do campo PRATSERV-NOMESERV-COM e tornar verdadeira a condio que indica a inexistncia do tipo de servio informado - PRATSERV-ERRO.
Encerrar o processamento do subprograma. Servios Vlidos (para gerao da tabela interna):
TIPO (2) NOME (8) DESCRIO (30)
IP IPTU IPTU
EE ENERGIA ENERGIA ELETRICA
AE AGUAESG AGUA E ESGOTO
GE GASENCAN GAS ENCANADO
TF TELEFIXO TELEFONIA FIXA
TM TELMOVEL TELEFONIA MOVEL (CELULAR)
CD CONDOMIN CONDOMINIO
IA IPVA TAXA DE IPVA
OS OUTROS OUTROS (ainda no inseridos nesta tabela)
Prtica Assistida
Subprograma - PRATDTxx Objetivo: subprograma para consistncia da data recebida na LINKAGE SECTION, com devoluo de informao sobre a validade ou no dessa data.
PRATDTxx
DATA
RETORNO
rea de comunicao PRATDTAC book criado no programa PRATxx20 01 PRATDATA-DATA-COM PIC 9(0008). DDMMAAAA 01 PRATDATA-CODRET-COM PIC X(0002). 88 PRATDATA-OK VALUE OK. 88 PRATDATA-ERRO VALUE **. Descrio do Processamento (validaes desejadas): o contedo do campo PRATDATA-DATA-COM, recebido via LINKAGE SECTION, deve ser
numrico e diferente de zero; o ano informado deve ser maior que 2010, mas no pode ser maior que o ano corrente.
Considerar sempre como 20xx; o ms informado deve ser maior que zero e menor que 13; o dia informado deve ser maior que zero e menor que 32, limitado quantidade mxima de
dias do ms informado; o ms de fevereiro poder ter o dia 29 se o ano informado for bissexto; a data informada no pode ser maior que a data do processamento. Retorno: Se a data informada estiver consistente, conforme todas as regras acima descritas, tornar
verdadeira a condio PRATDATA-OK (veja o uso do nvel 88), caso contrario tornar verdadeira a condio que indica a existncia de erro na data informada - PRATDATA-ERRO.
Encerrar o processamento do subprograma.
Prtica Assistida
Programa PRATxx30
Objetivo: gerao de Arquivo Consistido (ARQCONxx) a partir do Arquivo Movimento.
Descrio do processamento: A partir dos dados existentes nos registros HEADER e DETALHEs do Arquivo Movimento gerar os registros do Arquivo Consistido; Obter do registro HEADER o cdigo da agncia, tipo do servio e data do movimento e do registro DETALHE o nmero da conta e o valor do dbito; Informar ao final do processamento, totais de registros lidos e gravados, alm das mensagens de incio e fim de execuo ou de eventuais excees.
OBSERVAES: Exibir a MENSAGEM 1 no incio do processamento Arquivo de entrada vazio: enviar MENSAGEM 2 e encerrar o programa (cdigo de retorno 4); Final do processamento: enviar mensagens 3, 4 e 5 (atualizar data e hora).
MENSAGENS: 1 PRATxx30 dd/mm/aaaa hh:mm:ss INICIO DO PROCESSAMENTO
2 PRATxx30 ARQUIVO ARQMOVxx VAZIO
3 PRATxx30 TOTAL DE REGISTROS LIDOS......... xxxx
4 PRATxx30 TOTAL DE REGISTROS GRAVADOS...... xxxx
5 PRATxx30 dd/mm/aaaa hh:mm:ss FINAL DO PROCESSAMENTO
Na ocorrncia de erros de acesso a arquivos enviar mensagem abaixo e encerrar o processamento com cdigo de retorno 12:
ERRO NO ACESSO AO ARQUIVO xxxxxxx
OPERACAO xxxxxxx FILE STATUS xx
Arquivo Consistido Nome do book: ARQCONxx DDNAME: ARQCON30 - DSNAME: ASE.ALxxTyy.ARQCONSQ
Informao Nome do campo Formato Tamanho Decimais Valor
Agencia CODAGE-MVCC NUMERICO 4 0
Conta NCONTA-MVCC NUMERICO 6 0
Data Movimento DATAMOV-MVCC NUMERICO 8 0
Tipo servio TIPOSERV-MVCC ALFANUMERICO 2 -
Valor VALORL-MVCC DEC COMPACTADO 9 2
filler ALFANUMERICO 1
Tamanho registro 30
Data Movimento: AAAAMMDD
DDNAME: ARQCON30 - DSNAME: ASE.ALxxTyy.ARQCONSQ
CODAGE-MVCC NCONTA-MVCC DATAMOV-MVCC TIPOSERV-MVCC VALORL-MVCC
9(004) 9(006) 9(008) X(002) 9(007)V99 COMP-3 X(002)
PRATxx30
ARQMOV30
MENSAGENS DO
PROCESSAMENTO
ARQCON30
Prtica Assistida
Suporte TecTreinos Suporte TecTreinos e-mail: plantaodeduvidas@tectreinos.com.br MSN: fabio@tectreinos.com.br / alfredo@tectreinos.com.br Sugestes para consulta Apostilas do Curso de Formao Mainframe TecTreinos Manuais IBM e http://www.ibm.com/developerworks/br/ Buscar exemplos em sites e fruns especializados
Recommended