| Bellacosa Mainframe tranferindo arquivos com FTP |
Como Funciona o FTP no Ambiente Mainframe (Modo Batch e Modo Online)
O FTP (File Transfer Protocol) é uma das formas mais tradicionais de transferir arquivos entre Mainframes, servidores Linux, Windows, Unix e plataformas Cloud.
No z/OS, o FTP pode ser executado de duas formas:
✅ Modo Online (TSO)
✅ Modo Batch (JCL)
O que é FTP?
FTP significa:
File Transfer Protocol
É um protocolo utilizado para:
Enviar arquivos
Receber arquivos
Trocar datasets
Integrar sistemas
Arquitetura Básica
Mainframe
↓
FTP
↓
Servidor Linux
ou
Mainframe A
↓
FTP
↓
Mainframe B
Modos de Transferência
ASCII
Converte caracteres.
Utilizado para:
JCL
COBOL
TXT
PROC
BINARY
Não converte conteúdo.
Utilizado para:
LOADLIB
XMIT
ZIP
PDF
Executáveis
FTP Online (TSO)
Executado diretamente no terminal TSO.
Passo 1 – Entrar no FTP
No prompt TSO:
FTP 192.168.1.100
ou
FTP servidor.empresa.com
Passo 2 – Informar Usuário
Name:
Digite:
USER01
Passo 3 – Informar Senha
Password:
Digite:
*******
Conexão Estabelecida
Connected to server.
Comandos Básicos
Listar Diretório
LS
ou
DIR
Mudar Diretório
CD /home/arquivos
Ver Diretório Atual
PWD
Enviando Arquivos
Exemplo
Dataset:
USER.CLIENTES
Comando:
PUT 'USER.CLIENTES' clientes.txt
Fluxo:
Dataset Mainframe
↓
PUT
↓
Arquivo Linux
Recebendo Arquivos
GET clientes.txt 'USER.CLIENTES'
Fluxo:
Linux
↓
GET
↓
Dataset z/OS
Definindo Modo ASCII
ASCII
Definindo Modo BINARY
BINARY
Exemplo Completo Online
FTP servidor.empresa.com
USER user01
PASS senha
ASCII
PUT 'USER.COBOL.SOURCE(MEUCOBOL)' programa.cbl
QUIT
Resultado:
programa.cbl
enviado para o servidor.
FTP Batch (JCL)
Muito utilizado em produção.
Vantagens
✅ Automação
✅ Execução noturna
✅ Integração Batch
✅ Sem intervenção humana
Estrutura Básica
//FTPJOB JOB ...
//STEP01 EXEC PGM=FTP
//SYSPRINT DD SYSOUT=*
//INPUT DD *
...
/*
Exemplo 1 – Enviar Arquivo
//FTPJOB JOB CLASS=A,MSGCLASS=X
//FTPSTEP EXEC PGM=FTP
//SYSPRINT DD SYSOUT=*
//OUTPUT DD SYSOUT=*
//INPUT DD *
192.168.1.100
USER01
SENHA
ASCII
PUT 'USER.CLIENTES' clientes.txt
QUIT
/*
Fluxo
JCL
↓
FTP
↓
Servidor
↓
clientes.txt
Exemplo 2 – Receber Arquivo
//FTPJOB JOB CLASS=A
//FTPSTEP EXEC PGM=FTP
//SYSPRINT DD SYSOUT=*
//INPUT DD *
192.168.1.100
USER01
SENHA
ASCII
GET clientes.txt 'USER.CLIENTES'
QUIT
/*
Exemplo 3 – Transferindo XMIT
Arquivo:
USER.COBOL.XMIT
Sempre usar:
BINARY
JCL:
//FTPSTEP EXEC PGM=FTP
//INPUT DD *
192.168.1.100
USER01
SENHA
BINARY
PUT 'USER.COBOL.XMIT' COBOL.XMIT
QUIT
/*
Recebendo Arquivo XMIT
GET COBOL.XMIT 'USER.COBOL.XMIT'
Depois:
RECEIVE INDSN('USER.COBOL.XMIT')
FTP Entre Mainframes
Muito comum.
Mainframe A:
BANCO A
↓
PUT 'PROD.CLIENTES'
↓
BANCO B
Criando Dataset Remoto
Muitos servidores FTP do z/OS aceitam:
SITE
Exemplo:
SITE RECFM(F B) LRECL(80) BLKSIZE(8000)
Depois:
PUT CLIENTES.TXT 'USER.CLIENTES'
SITE Command
Muito importante.
Permite definir:
LRECL
BLKSIZE
RECFM
SPACE
Exemplo
SITE
RECFM(FB)
LRECL(80)
CYLINDERS
PRIMARY=5
SECONDARY=2
FTP Seguro
Atualmente utiliza-se:
FTPS
FTP com TLS.
SFTP
Via SSH.
Fluxo:
Mainframe
↓
SFTP
↓
Linux
Exemplos de Uso Real
Banco
PIX
↓
FTP
↓
Arquivo BACEN
Seguradora
Batch Noturno
↓
FTP
↓
Parceiro
Governo
Arrecadação
↓
FTP
↓
Receita
Erros Mais Comuns
Login Inválido
530 Login Incorrect
Dataset Não Encontrado
550 File Not Found
Permissão Negada
550 Access Denied
ASCII x BINARY
Erro clássico.
Enviar XMIT em ASCII:
Arquivo Corrompido
Correto:
BINARY
Boas Práticas
✅ XMIT → BINARY
✅ LOADLIB → BINARY
✅ Texto COBOL → ASCII
✅ Usar FTPS/SFTP
✅ Automatizar via JCL
✅ Validar retorno FTP
Resumo Rápido
| Comando | Função |
|---|---|
| FTP host | Conectar |
| PUT | Enviar |
| GET | Receber |
| ASCII | Modo texto |
| BINARY | Modo binário |
| DIR | Listar |
| CD | Trocar diretório |
| QUIT | Encerrar |
| SITE | Definir atributos |
| RECEIVE | Restaurar XMIT |
Exemplo Clássico de Produção
JOB Batch
↓
FTP
↓
Arquivo Remessa
↓
Banco Parceiro
↓
Processamento
↓
Arquivo Retorno
↓
FTP GET
↓
Mainframe
Esse é um dos cenários mais comuns em bancos, seguradoras, telecomunicações e órgãos governamentais que utilizam Mainframe para integração de arquivos em larga escala.
Sem comentários:
Enviar um comentário