A DATA DIVISION é a terceira divisão obrigatória de um programa COBOL. É nela que são declarados todos os arquivos, variáveis, áreas de trabalho, tabelas, constantes e estruturas de dados que serão utilizadas pelo programa durante a execução.

🧱 Função da DATA DIVISION

  • Define arquivos de entrada e saída

  • Declara variáveis de trabalho

  • Estabelece áreas para comunicação entre programas

  • Garante que o programa tenha estrutura e controle sobre os dados

🔖 Seções da DATA DIVISION

📁 FILE SECTION

Declara os arquivos físicos que o programa irá ler ou gravar.

FILE SECTION.
FD CLIENTE-FILE
01 CLIENTE-REGISTRO PIC X(100).

🛠 WORKING-STORAGE SECTION

Área usada para variáveis auxiliares, constantes, indicadores e buffers.

WORKING-STORAGE SECTION.
01 WS-CONTADOR    PIC 9(4) VALUE ZEROS.
01 WS-NOME-CLIENTE PIC X(50).

🔄 LOCAL-STORAGE SECTION

Armazena variáveis locais que são recriadas a cada chamada do programa.
Muito utilizada em subprogramas e chamadas SQL com INCLUDE, DCLGEN, SQLCA, cursores etc.

LOCAL-STORAGE SECTION.
EXEC SQL INCLUDE SQLCA END-EXEC.

🔗 LINKAGE SECTION

Usada para receber parâmetros externos vindos de um programa que chama o atual.
Essas variáveis são populadas durante uma chamada CALL.

LINKAGE SECTION.
01 LS-PARAMETRO-ENTRADA PIC X(10).

📑 REPORT SECTION (opcional e obsoleta na prática)

Utilizada para definir relatórios a serem gerados automaticamente, com estrutura formal baseada em RD.

REPORT SECTION.
RD RELATORIO-CLIENTE.

🖥 SCREEN SECTION (modo de tela)

Permite criar interfaces com o usuário diretamente no terminal, útil em sistemas interativos fora do batch.

SCREEN SECTION.
01 TELA-ENTRADA.
   05 NOME-CLIENTE PIC X(30).

 

▶️ Vídeo: DATA DIVISION

Assista ao conteúdo prático no canal Cobol Dicas e veja cada seção com exemplos reais:

 

✅ Conclusão

A DATA DIVISION organiza toda a estrutura de dados do programa. É onde você define o que o seu código vai manipular, de onde vêm os dados e como eles serão processados. Conhecê-la bem é essencial para dominar o COBOL de verdade.