📌 Explicação
O parâmetro SPACE= define quanto espaço em disco ou fita o dataset vai ocupar quando for criado. Ele também diz a unidade de medida (TRK, CYL ou BLKS) e se vai ter extensões caso o espaço acabe.
🧰 Usos mais comuns
-
Criar arquivos novos em disco com tamanho estimado.
-
Definir espaço mínimo e espaço adicional para crescimento.
-
Controlar o uso de recursos de disco no mainframe.
🧾 Sintaxe
//DDNAME DD DSN=nome.do.dataset,
// DISP=(NEW,CATLG,DELETE),
// UNIT=SYSDA,
// SPACE=(unidade,(primária,secundária))
Unidades:
-
TRK= trilhas -
CYL= cilindros -
BLKS= blocos (menos usado)
💻 Exemplo prático
//SAIDA DD DSN=CDICAS.SAIDA.RELATORIO,
// DISP=(NEW,CATLG,DELETE),
// UNIT=SYSDA,
// SPACE=(TRK,(10,5))
Nesse caso:
-
Reserva inicialmente 10 trilhas
-
Se o espaço acabar, pode crescer de 5 em 5 trilhas
⚙️ Regras
-
SPACE=é obrigatório comDISP=NEW -
A medida deve ser compatível com o
UNIT= -
Se não souber o tamanho do arquivo, pode testar e ajustar depois
💡 Dicas
-
Comece com
SPACE=(TRK,(10,5))nos testes e ajuste conforme o uso real. -
Para arquivos grandes, use
CYL(menos extensões, mais performance). -
Cuidado com espaço subestimado — pode dar
S837(sem espaço em disco).
✅ Conclusão
SPACE= é o que diz pro mainframe: "reserva um canto no disco pra mim". Se usar pouco, o job pode parar. Se exagerar, você desperdiça recurso. Saber dimensionar bem esse parâmetro é sinal de programador experiente e que conhece os arquivos que manipula.