Cobol Basico

  • Published on
    22-Jan-2016

  • View
    82

  • Download
    0

Embed Size (px)

Transcript

  • CobolCommon Bussines Oriented Language

    Uma das linguagens de programao mais usadas, o COBOL uma linguagem orientada para negcios, com capacidade de processamento de grandes arquivos.

  • Formato Fonte CobolRegras de posicionamento

    ....|. . ..1....|. ...2....|....3....|....4....|....5....|....6....|....7.. ..|..... Colunas de 1 a 6:rea de numerao seqencialColuna 7:rea de indicaoColunas de 8 a 11:rea AColunas de 12 a 72:rea BColunas de 73 a 80: Comentrios

  • Formato Fonte Cobolrea de numerao seqencial: numerar as linhas do fonte, colocar comentrios.rea de indicao:(-) hfen indica continuao de um texto que foi iniciado na linha anterior.(*) asterisco indica que toda a linha deve ser tratada como um comentrio.(/) barra indica salto de pgina.rea A e rea B:Posio a partir do qual se escreve o nome das divises, sees, pargrafos, sentenas, instrues Cobol.Comentrios

  • Formato Fonte Cobol

  • Formato Fonte CobolCaracteres: De 0 a 9;De A a Z;Espaos, parnteses, menor que, maior que, ponto, sinal de mais, sinal de menos, dlar, E comercial, arroba, igual, vrgula, barra, asterisco, apstrofes.Palavra:Uma palavra no deve exceder a 30 caracteres.O espao em branco no um caracter permitido para a formao de palavras.Uma palavra no pode comear nem terminar com hfen (-).

  • Formato Fonte CobolH palavras que so reservadas do Cobol, com propsitos prprios:Constante figurativa: uma palavra associada a um valor particular. Ex: ZEROS, SPACES, QUOTES, HIGH-VALUES, LOW-VALUES.

  • Formato Fonte CobolPalavras opcionais: Seu uso opcional. Ex: IS, THANIFCPO-AISGREATERTHAN10IFCPO-AGREATER10Palavras-chave: Determinar a funo da clusula ou comando. Ex: ADD, READ, WRITE, IF.

  • Formato Fonte CobolClusula Picture: usada para descrio de informaes sobre itens, tais como: tamanho, sinal, tipo. ALFABTICO -> representado por letras mais o espao, e o carcter usado a letra A. ALFANUMRICO -> representado por letras, nmeros e caracteres do Cobol. O caracter usado a letra X. A representao de dados no pode exceder a 120 caracteres.NUMRICO -> usa-se para representao exclusiva de itens numricos. Os caracteres usados so: 9, V, P, S.9 = utilizado para indicar a posio do campo que contm um dgito de 0 a 9.V = usado para mostrar a posio da vrgula decimal. O ponto decimal, se colocado, no faz parte do item.P = representa um dgito numrico zero (0).S = indica a presena de sinal, deve ser colocado antes do 9.

  • Formato Fonte CobolEdio: utiliza-se para itens que devem ser impressos ou enviados para tela de programas on-line. (9), (V), (P) -> so usados de maneira semelhante ao uso dos itens numricos;(.) -> o ponto decimal, quando usado, inserido na posio indicada;(Z) -> indica a supresso de zeros no significativos;(*) -> usado como proteo de um nmero impresso;(CR), (DB) -> significam CR (crdito) e DB (dbito). Usa-se somente quando o nmero for negativo. Caso o nmero seja positivo, no aparecer nada;(,), (0), (B) -> so smbolos de edio que so inseridos na impresso;($), (+), (-) -> so impressos na posio indicada.

  • Formato Fonte CobolDefinio Picture Valor Real Na memria9(04) 9999 502 5029V9(2) 9V99 1,25 1259(03) 999PP 43700 437S9(02) S99 -21 21-9(05) 99.999 10.987 109879(04)V99 Z.ZZZ,99 25,50 0025509(03) ZZZ 0009(03) **9 422 4229(03) *** *** 000S9(03)V99 999,99CR 800,00CR 80000(-)9(04) 990099 110025 11259(06) 99B99B99 12 13 15 1213159(03) $999 $371 371S9(02) -99 -15 15(-)S9(02) -99 16 16 S9(02) +99 15 15(-)S9(02) +99 +16 16(+)S9(02) 99- 15- 15(-)S9(04) -.--9 -12 0012(-)

  • Formato Fonte CobolOpo Computacional (COMP): S podem ser usados para itens numricos (COMP, COMP-1, COMP-2, COMP-3, COMP-4).COMP ou COMP-4 (binrio):Bytes = 2 se tamanho do campo com COMP for de 1 a 4, half-word;Bytes = 4 se tamanho do campo com COMP for de 5 a 9, full-word;Bytes = 8 se tamanho do campo com COMP for de 10 a 18, double-word;COMP-3 (compactado): decimal interno (compactado). Campos at 18 dgitos ou 10 bytes. 1 byte usa 2 dgitos ou 1 dgito mais o sinal. COMP-1 e COMP-2 (ponto-flutuante): um formato de representao digital de nmeros reais.

  • Formato Fonte Cobol

  • Formato Fonte Cobol

  • Formato Fonte CobolClusula Redefines usada para redescrever uma rea.A redefinio dever conter a mesma quantidade de bytes do campo ou rea anterior e estar no mesmo nvel.

  • Organizao do Cdigo

    DivisesSeesPargrafosSentenas Comandos / Clusulas

  • Cdigo Fonte CobolPossui quatro divises que devem ser utilizadas nesta ordem:IDENTIFICATION DIVISION identificaoENVIRONMENT DIVISION equipamentoDATA DIVISION dadosPROCEDURE DIVISION procedimentos

  • Identification DivisionEsta diviso possui a seguinte estrutura: PROGRAM-ID.nome-programa. AUTHOR.nome do autor do programa. INSTALLATION.local de uso ou gerao do programa. DATE-WRITTEN.data da elaborao do programa. DATE-COMPILED.rea para o compilador inserir data. SECURITY.informaes sobre acesso ao pgm/arq. REMARKS. comentrios para documentao.

    O nico pargrafo obrigatrio o PROGRAM-ID. O nome do programa deve ser uma palavra com at 8 caracteres (letras ou nmeros), comeando por uma letra.

  • Identification Division

  • Environment Division dividida em duas sees: Configuration Section Input-Output Section CONFIGURATION SECTION: destina-se a uma descrio geral do ambiente do computador.SOURCE-COMPUTER, OBJECT-COMPUTER (comentrios)SPECIAL-NAMES: o separador de decimais o mais freqentemente usado, indicando que ser usada a vrgula para separar as casas decimais.

  • Environment Division

  • Environment DivisionO nome externo o nome pelo qual o arquivo ser reconhecido pelo carto DD do JCL. JCL (Job control language ou linguagem de programao de servios) tem a funo de solicitar e informar recursos e dispositivos ao sistema operacional. JOB (servio) composto por um ou mais programas que sero processados dentro de uma sequncia. Uma interrupo causada pelo programa chamamos de ABEND. Exemplo de jcl:

  • Data DivisionDiviso do programa onde so definidos os dados, incluindo todas as variveis e constantes necessrias, assim como o layout dos registros dos arquivos.Essa diviso possui 5 sees que devem aparecer na ordem especificada. FILE SECTION.WORKING-STORAGE SECTION.LINKAGE SECTION.COMMUNICATION SECTION. REPORT SECTION.

    Caso alguma seo no seja necessria, deve ser omitida.

  • Data DivisionFILE SECTIONDescreve o contedo e a organizao dos arquivos.Indicadores de nvel:FD - File Description Descrio de arquivos SD - Sort Descrition Descrio de sort-filesRD - Report Description Descrio de relatriosCD - Communication Descriprion Descrio de comunicao

  • Data DivisionFD nome do arquivo BLOCK CONTAINS (tamanho do registro fsico) RECORD CONTAINS (tamanho do registro lgico) RECORDING MODE (formato do arquivo) LABEL RECORD (formato do label) DATA RECORD (nome do registro).

  • Data DivisionWORKING-STORAGE SECTIONDescreve informaes sobre as reas de trabalho, descrio de tabelas, rea para DB2, lay-out, etc. Declarao das variveis e constantes do programa.

    Nmeros de nveis:Servem para estruturar logicamente o registro. Est subdividido em:Itens elementares (no possuem divises);Itens de grupoO nmeros de nveis esto entre 01 e 49, porm quanto menor for o nvel, mais importante ele ser dentro da definio.

  • Data DivisionNmeros de nvel: 01, 03, 05Itens de grupo: CNPJ-CPF, WAX-CPF-CNPJ-R1Itens elementares: WAX-NO-CPF-CNPJ-R1, WAX-NO-FIL-CNPJ-R1, WAX-NO-DG-CPF-CNPJ-R1

  • Data DivisionDescrio de tabela

  • Data DivisionDescrio de rea de comunicaoDescrio de rea de banco de dados

  • Data DivisionNveis especiais:O item (77) serve para definir acumuladores e reas auxiliares. O item (88) especifica condies que devem ser associadas a valores particulares. Os valores definidos no nvel 88 devem estar em ordem crescente.

    77 AC-LIDOS PIC 9(05) VALUE 0.AUX-NOME PIC X(20).

    01 WRK-REG.02 WRK-SEXO PIC X(01). 88 FEMI VALUE F. 88 MASC VALUE M.

  • Data DivisionLINKAGE SECTIONUsada para recebimento de parmetros -- estabelecer comunicao -- entre dois programas ou recebimento de parmetros via JCL (PARM).Estrutura:Varivel PIC S9(04) COMP que recebe o tamanho dos dados;Varivel que ir conter, em tempo de execuo, os dados informados atravs do PARM; ela deve ter tamanho suficiente para receber todos os dados.

  • Data DivisionCommunication SectionSeo que descreve os dados que servem de interface entre o Message Control System (MCS) e o programa Cobol. (estabelece ligaes entre o programa cobol e programa de controle de telepro