📌 Descrição

O comando DD (Data Definition) define os arquivos ou dispositivos usados por um programa ou utilitário dentro de uma etapa (EXEC). Ele associa nomes lógicos (DDNAMEs) a datasets físicos, arquivos temporários, entradas in-stream ou dispositivos de saída.

🧠 Sintaxe

//NOMEDD DD PARÂMETROS

🔍 Parâmetros Comuns

Parâmetro Finalidade
DSN=nome.dataset Define o nome do dataset (arquivo) a ser acessado.
DISP=estado Define o status de uso do dataset (NEW, OLD, SHR, MOD).
UNIT=SYSDA Tipo de dispositivo onde o arquivo será alocado.
SPACE=(tipo,quant) Espaço em disco reservado (apenas para DISP=NEW).
DCB=(...) Parâmetros de controle de dados (ex: RECFM, LRECL, BLKSIZE).
SYSOUT=classe Direciona saída para spool de impressão.
* ou DATA Entrada de dados in-stream.
DUMMY Indica que o dataset não será lido nem gravado (placeholder).

 

Exemplos

Acessando um arquivo existente:

//ARQENTR  DD DSN=EMPRESA.DADOS.CLIENTES,DISP=SHR

Criando um novo arquivo temporário:

//TEMP1    DD DSN=&&TMPARQ,DISP=(NEW,PASS),UNIT=SYSDA,
//            SPACE=(TRK,(10,5)),DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)

Entrada de dados in-stream:

//SYSIN    DD *
DADOS DE EXEMPLO
MAIS DADOS
/*

Ignorando a leitura de um arquivo:

//ARQIGNR  DD DUMMY

⚠️ Observações

  • Cada EXEC pode conter vários comandos DD, um para cada arquivo necessário.

  • O nome NOMEDD (DDNAME) deve coincidir com o esperado pelo programa chamado.

  • Arquivos temporários (&&NOME) existem somente durante a execução do job.