En este documento se explican los tipos de intercambios de archivos más comunes entre AS400 y PC; deben servir solo como referencia y adaptar los parámetros según nuestras necesidades:
Archivos formato texto ("planos" de 1 solo campo):
De AS400 a PC, en un directorio ubicado en un servidor de archivos (por ejemplo):
CPYTOIMPF FROMFILE(mylib/myfile) TOSTMF('/QNTC/myserver/mysharedfolder/mytextfile.TXT') MBROPT(*REPLACE) STMFCODPAG(*PCASCII) RCDDLM(*CRLF) DTAFMT(*DLM) STRDLM(*NONE)
Para generar ficheros sin caracter CR (retorno carro) y solo LF (final de linea):
CPYTOIMPF FROMFILE(mylib/myfile) TOSTMF('/home/temp/myascii.txt') MBROPT(*REPLACE) FROMCCSID(37) STMFCODPAG(*PCASCII) RCDDLM(*LF) DTAFMT(*DLM) STRDLM(*NONE) STRESCCHR(*NONE) RMVBLANK(*TRAILING)
FLDDLM('')
Ejemplo para subir un archivo plano de PC (desde un servidor) al AS400:
CPYTOIMPF FROMFILE(mylib/myfile) TOSTMF ('/QNTC/myserver/mysharedfolder/mycsvfile.CSV') MBROPT(*REPLACE) STMFCODPAG(*PCASCII) RCDDLM(*CRLF) DTAFMT(*DLM) STRDLM('"') FLDDLM(';')
Tener en cuenta que la ruta "/QNTC/myserver/mysharedfolder/" solo funciona si:
Archivos formato texto ("planos" de 1 solo campo):
De AS400 a PC, en un directorio ubicado en un servidor de archivos (por ejemplo):
CPYTOIMPF FROMFILE(mylib/myfile) TOSTMF('/QNTC/myserver/mysharedfolder/mytextfile.TXT') MBROPT(*REPLACE) STMFCODPAG(*PCASCII) RCDDLM(*CRLF) DTAFMT(*DLM) STRDLM(*NONE)
Para generar ficheros sin caracter CR (retorno carro) y solo LF (final de linea):
CPYTOIMPF FROMFILE(mylib/myfile) TOSTMF('/home/temp/myascii.txt') MBROPT(*REPLACE) FROMCCSID(37) STMFCODPAG(*PCASCII) RCDDLM(*LF) DTAFMT(*DLM) STRDLM(*NONE) STRESCCHR(*NONE) RMVBLANK(*TRAILING)
FLDDLM('')
Ejemplo para subir un archivo plano de PC (desde un servidor) al AS400:
- Primero averiguar la longitud del archivo TEXTO.TXT, por ejemplo en este caso 132.
- Crear un archivo de destino en el AS400:
- CRTPF FILE(MYLIB/TEXTO) RCDLEN(132)
- Copiar el archivo:
- CPYFRMIMPF FROMSTMF('/QNTC/myserver/mysharedfolder/mytextfile.TXT') TOFILE(MYLIB/TEXTO) MBROPT(*REPLACE) RCDDLM(*CRLF) DTAFMT(*DLM) STRDLM(*NONE) RMVBLANK(*NONE) FLDDLM(*TAB)
CPYTOIMPF FROMFILE(mylib/myfile) TOSTMF ('/QNTC/myserver/mysharedfolder/mycsvfile.CSV') MBROPT(*REPLACE) STMFCODPAG(*PCASCII) RCDDLM(*CRLF) DTAFMT(*DLM) STRDLM('"') FLDDLM(';')
Tener en cuenta que la ruta "/QNTC/myserver/mysharedfolder/" solo funciona si:
- La carpeta compartida del servidor //myserver/mysharedfolder es accesible desde la red.
- El servicio Netserver del AS400, esta correctamente configurado.
- El usuario y la contraseña que lanza el mandato CPY???IMPF es igual en el AS400 y en el servidor de archivos.