pratica assistida -
-
Upload
fabricio-barros -
Category
Documents
-
view
58 -
download
0
Transcript of pratica assistida -
-
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: [email protected] MSN: [email protected] / [email protected] 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