Formacao Cobol

  • View
    174

  • Download
    3

Embed Size (px)

Transcript

Manual de Referncia: COBOL - Programao Curso de Cobol - Apresentao

1

Manual de Referncia: COBOL - Programao Curso de Cobol - Apresentao

1. Introduo 2. Formato do Fonte Cobol 2.1. rea de numerao seqencial 2.2. rea de indicao 2.3. rea A 2.4. rea B 3. Estrutura de um Programa Cobol 3.1. IDENTIFICATION DIVISION 3.2. ENVIRONMENT DIVISION 3.2.1. CONFIGURATION SECTION 3.2.2. INPUT-OUTPUT SECTION 3.3. DATA DIVISION 3.3.1. Especificao dos dados 3.3.1.1. Nvel 3.3.1.2. Nome do dado Indice 3.3.1.3. Formato do dado 3.3.1.4. Valor inicial 3.3.2. Estrutura da DATA DIVISION 3.3.2.1. FILE SECTION 3.3.2.1.1. FILE DESCRIPTION (FD) 3.3.2.2. WORKING-STORAGE SECTION 3.3.2.3. LINKAGE SECTION 3.3.2.3.1. Utilizao do parmetro PARM 3.4. PROCEDURE DIVISION 3.4.1. Movimentao de dados 3.4.2. Clculos aritmticos 3.4.2.1. Adio 3.4.2.2. Subtrao 3.4.2.3. Multiplicao 3.4.2.4. Diviso 3.4.2.5. Resoluo de frmulas 3.4.3. Comandos condicionais 3.4.3.1. Formato dos comandos condicionais

2

Manual de Referncia: COBOL - Programao Curso de Cobol - Apresentao

3.4.3.2. NEXT SENTENCE 3.4.4.3. CONTINUE 3.4.4.4. EXIT 3.4.3.5 Condies concatenadas 3.4.3.6 Condies compostas 3.4.4. Alteraes/Desvios do fluxo do programa 3.4.4.1. Uso do comando GO TO 3.4.4.2. Uso do comando PERFORM 4. Arquivos 4.1. Registros 4.2. Abertura de arquivos 4.3. Leitura/gravao de arquivos 4.4. Fechamento de arquivos 4.5. Entrada e Sada de baixo volume 5. Encerramento do programa 6. Formatos especiais de dados 6.1. Sinal de campos numricos. 6.2. Formatos binrios 6.3. Clusula USAGE 6.3.1. USAGE DISPLAY 6.3.2. USAGE COMP 6.3.3. USAGE COMP-3. 6.4. Tabelas 6.4.1. Nveis das tabelas 7. Impresso 7.1. Opo AFTER POSITIONING 7.2. Mscaras de Edio de Campos 7.3. Supresso de zeros 7.4. Tipos de Mscaras de Edio - OUTRAS 7.5. BLANK WHEN ZERO 8. Ordenao de Arquivos 8.1. Sort intrnseco 8.2. Sort extrnseco

3

Manual de Referncia: COBOL - Programao Curso de Cobol - Apresentao

9. Arquivos de acesso aleatrio (VSAM) 9.1. Manipulao de Arquivos VSAM 9.1.1. INPUT-OUTPUT SECTION para VSAM 9.1.2. FILE STATUS 9.1.3. PROCEDURE DIVISION para VSAM 9.1.4. Abertura do arquivo. 9.1.5. 9.1.6. 9.1.7. 9.1.8. 9.1.9. 9.1.10. 9.1.12. READ READ NEXT READ PREVIOUS START WRITE. REWRITE Fechamento de arquivos

9.1.11. DELETE 10. Comunicao entre programas 11. Comandos Diversos 11.1. EVALUATE 11.2. REDEFINES 11.3. INSPECT 11.4. STRING 11.5. UNSTRING 11.6. TABELAS INDEXADAS 11.6.1. SET 11.6.2. SEARCH 11.6.2.1. 11.6.2.2. 11.7. ALTER 11.8. GO TO DEPENDING ON 11.9. Nomes condicionais 11.10. Copy 12. Diagrama de Bloco 12.1. 12.2. O que um Diagrama de Bloco Simbologias Pesquisa seqencial Pesquisa binria

4

Manual de Referncia: COBOL - Programao Curso de Cobol - Apresentao

1. INTRODUO O Cobol uma linguagem de alto nvel criada no ano de 1959. A palavra Cobol uma abreviao de: Common Business Oriented Language. Como seu nome indica, o objetivo desta linguagem permitir o desenvolvimento de aplicaes comerciais para pessoas sem conhecimento profundo de computadores. Por isso a linguagem Cobol usa frases normais da lngua inglesa, e a estrutura de um programa Cobol se assemelha a um texto com divises, pargrafos e frases em ingls. Depois de escrito o programa Cobol (ou programa fonte), necessrio traduz-lo para a linguagem interna do computador (linguagem de mquina), convertendo-se ento em um programa objeto. Esta converso feita pelo prprio computador, usando o programa compilador de Cobol. Damos em seguida a definio de alguns termos importantes para o desenvolvimento do curso: Byte: conjunto de 8 bits (pontos magnticos) que formam uma posio de memria. ASCII: tabela usada em micros para converso do valor binrio dos bits de um byte em um caracter. EBCDIC: tabela da IBM para converso do valor binrio dos bits de um byte em um caracter. Programa fonte: Texto de um programa escrito em uma linguagem de alto nvel (ex.: Cobol). Programa objeto: Programa convertido para a linguagem interna do computador (linguagem mquina). Compilador: Conversor de programa fonte em programa objeto.

5

Manual de Referncia: COBOL - Programao Curso de Cobol - Apresentao

2. FORMATO FONTE COBOL Todo programa escrito na linguagem Cobol possui algumas regras a serem seguidas. Uma destas regras se refere ao formato das linhas de comando (instrues) dentro do seu editor de fonte. Uma linha de comando Cobol pode ter at 80 caracteres, conforme o formato abaixo: Seqncia 1 I rea A 8 11 12 72 rea de numerao seqencial rea de indicao rea A rea B Comentrios rea B Comentrio 73 80

6 7

Colunas de 1 a 6: Coluna 7: Colunas de 8 a 11: Colunas de 12 a 72: Colunas de 73 a 80:

2.1. REA DE NUMERAO SEQUENCIAL Normalmente consiste em seis dgitos em ordem crescente que normalmente so utilizados para numerar as linhas do fonte. Segundo as regras no ANS85 pode-se tambm colocar comentrios nesta rea. Alm disso, podemos colocar um asterisco na coluna 1 (um) ou qualquer outro caractere com valor ASCII menor do que 20 (ESPAO), fazendo com que a linha inteira seja considerada como um comentrio. Pode-se tambm deixar esta rea em branco. 2.2. REA DE INDICAO Um hfen (-) nesta posio indica que existe uma continuao de um texto que foi iniciado na linha anterior. Um asterisco (*) nesta posio indica que toda a linha deve ser tratada como um comentrio.

6

Manual de Referncia: COBOL - Programao Curso de Cobol - Apresentao

Uma barra (/) nesta posio, alm de marcar a linha como comentrio far com que ao se imprimir este fonte, haver um salto de pgina aps esta linha. 2.3. rea A Posio a partir do qual se escreve nome de pargrafos. 2.4. rea B Posio a partir da qual se escrevem as instrues Cobol. Veja o exemplo de cdigo fonte a seguir: NUM I A AREA B ESTE E UM PARAGRAFO PARA GRAFO-1. ADD VALOR TO LUCRO. COMEN. *PROG1* *PROG1* *PROG1*

000110 * 000120 000130

7

Manual de Referncia: COBOL - Programao Curso de Cobol - Apresentao

3. ESTRUTURA PROGRAMA COBOL De maneira semelhante a um livro com seus captulos, pargrafos e itens, um programa Cobol formado por uma hierarquia de Divisions, Sections, pargrafos e instrues. Como regra de sintaxe, toda declarao de Division, Section, pargrafo ou instruo deve ser terminado por ponto final (.). O cdigo Cobol possui quatro divises que devem ser utilizadas nesta ordem: IDENTIFICATION DIVISION. ENVIRONMENT DIVISION. DATA DIVISION. PROCEDURE DIVISION. Como foi explicado no item anterior (Formato do fonte) a declarao das DIVISIONS devem se iniciar na rea A do texto (coluna 8). 3.1. IDENTIFICATION DIVISION Esta a diviso de identificao do programa. No contm sections, mas somente alguns pargrafos preestabelecidos e opcionais. O nico pargrafo obrigatrio o PROGRAM-ID (Nome do programa). O nome do programa deve ser uma palavra com at 8 caracteres (letras ou nmeros), comeando por uma letra. Esta diviso possui a seguinte estrutura: IDENTIFICATION PROGRAM-ID. AUTHOR. DATE-WRITTEN. DATE-COMPILED. SECURITY. REMARKS. DIVISION. nome-programa. comentrio. comentrio. comentrio. comentrio. comentrio.

8

Manual de Referncia: COBOL - Programao Curso de Cobol - Apresentao

PROGRAM-ID (Program Identification) - dever ser informado o nome do programa atravs do qual ele ser identificado. AUTHOR - clusula opcional onde pode ou no constar o nome do autor do programa. DATE-WRITTEN - clusula opcional onde o desenvolvedor coloca a data em que o programa foi codificado. DATE-COMPILED - clusula opcional onde o compilador insere a data da compilao do programa. SECURITY - clusula opcional onde podem ou no constar informaes sobre o acesso ao programa. REMARKS - clusula opcional onde normalmente se colocam observaes sobre o programa. Como por exemplo, o histrico de suas atualizaes e seus respectivos autores, ou a data de criao e objetivo do programa, etc. IMPORTANTE: Se houver a necessidade da incluso de mais de uma linha com textos explicativos, deve-se utilizar um * (asterisco) na coluna 7 (sete). Desta forma a nova linha ser tratada como comentrio pelo compilador.

3.2. ENVIRONMENT DIVISION Esta diviso descreve o equipamento envolvido no programa. Possui duas sections e sua estrutura a seguinte: ENVIRONMENT CONFIGURATION SOURCE-COMPUTER. OBJECT-COMPUTER. SPECIAL-NAMES. INPUT-OUTPUT FILE-CONTROL. I-O CONTROL. SECTION. DIVISION. SECTION. comentrio. comentrio.

9

Manual de Referncia: COBOL - Programao Curso de Cobol - Apresentao

3.2.1. CONFIGURATION SECTION Esta seo destina-se a uma descrio geral do ambiente do computador. Ela composta por trs pargrafos: SOURCE-COMPUTER, OBJECT-COMPUTER e SPECIALNAMES conforme mostrado acima. SOURCE-COMPUTER - identifica o computador onde foi confeccionado o programa (opcional). OBJECT-COMPUTER - identifica o computador do ambiente de produo (opcional). SPECIAL-NAMES - tem comandos pr-definidos em Cobol, para especificar alfabeto, moeda ou separador de decimal (vrgula ou ponto). Porm todos os comandos so opcionais. O separador de decimais o mais freqentemente, indicando que vai se usar a vrgula para separar as casas decimais. A sintaxe correta : SPECIAL-NAMES. DECIMAL-POINT 3.2.2 INPUT-OUTPUT SECTION. Esta seo destina-se a configurao dos arquivos que o programa utilizar. Ela possui dois pargrafos: FILE-CONTROL e I-O-CONTROL. FILE-CONTROL - neste pargrafo devemos especificar cada um dos arquivos que o programa ir utilizar, de forma individualizada. I-O-CONTROL - contm vrios pargrafos opcionais para especificar opes de uso de fitas magnticas. Como este dispositivo caiu em desuso, este pargrafo no mais usado atualmente. No pargrafo FILE-CONTROL, usamos uma instruo SELECT para cada arquivo descrito. A sintaxe correta : SELECT nome-do-arquivo ASSIGN TO dispositivo-do-computador. No exemplo abaixo, mostraremos a ENVIRONMENT DIVISION de um programa que ir acessar um arquivo chamado CLIENTES. IS COMMA.

10

Manual de Refernci