Menu

COBOL - Classificar arquivo de entrada


Descreva o arquivo ou arquivos de entrada para classificação ou mesclagem seguindo o procedimento abaixo.

Código da seguinte forma:
  • Escreva uma ou mais cláusulas SELECT no parágrafo FILE-CONTROL da ENVIRONMENT DIVISION para nomear os arquivos de entrada. Por exemplo:

    ENVIRONMENT DIVISION.
    INPUT-OUTPUT SECTION.
    FILE-CONTROL.
        SELECT Input-File ASSIGN TO InFile.
    

    Input-File é o nome do arquivo em seu programa. Use este nome para se referir ao arquivo.

  • Descreva o arquivo de entrada (ou arquivos ao mesclar) em uma entrada FD na SEÇÃO DE ARQUIVO da DIVISÃO DE DADOS. Por exemplo:

    DATA DIVISION.
    FILE SECTION.
    FD  Input-File
        LABEL RECORDS ARE STANDARD
        BLOCK CONTAINS 0 CHARACTERS
        RECORDING MODE IS F
        RECORD CONTAINS 100 CHARACTERS.
    01  Input-Record   PIC X(100).
    

Exemplo: Vamos ver um exemplo de código COBOL abaixo,

ID Division.
Program-ID. SmplSort.
Environment Division.
Input-Output Section.
File-Control.
*
* Assign name for a working file is treated as documentation.
*
    Select Sort-Work-1 Assign To SortFile.
    Select Sort-Work-2 Assign To SortFile.
    Select Input-File  Assign To InFile.
. . .
Data Division.
File Section.
SD  Sort-Work-1
    Record Contains 100 Characters.
01  Sort-Work-1-Area.
    05  Sort-Key-1    Pic  X(10).
    05  Sort-Key-2    Pic  X(10).
    05  Filler        Pic  X(80).

SD  Sort-Work-2
    Record Contains 30 Characters.
01  Sort-Work-2-Area.
    05  Sort-Key      Pic  X(5).
    05  Filler        Pic  X(25).

FD  Input-File
    Label Records Are Standard
    Block Contains 0 Characters
    Recording Mode is F
    Record Contains 100 Characters.
01  Input-Record      Pic  X(100).
. . .
Working-Storage Section.
01  EOS-Sw            Pic  X.
01  Filler.
    05  Table-Entry Occurs 100 Times
            Indexed By X1    Pic X(30).
    . . .