Lea en AS/400 System i . . .

Aprovechando las posibilidades del WRKACTJOB a través de sus parámetros

Obtenga una salida diferente de la habitual al ejecutar el comando WRKACTJOB, aprovechando lo ofrecido por algunos parámetros interesantes que posibilitan entre otras acciones la de renovar automáticamente la pantalla resultante.

FaceBookTwitterGoogle+

Cómo automatizar transferencias de archivos con TCP/IP desde AS/400

Automatice las transferencias de archivos entre la PC y el AS400 en forma batch

El intercambio de grandes cantidades de datos entre computadoras siempre ha sido uno de los principales requerimientos dentro de cualquier departamento de tecnología informática. Debido a la generalización del uso de TCP/IP, la aplicación FTP (File Transfer Protocol) se ha convertido en uno de los servicios más utilizados para enviar, recibir y compartir archivos a través de redes.

La aplicación FTP es una de las que integran la suite de aplicaciones TCP/IP, y por lo tanto, suele ser provista por el mismo proveedor del protocolo (ver notas finales). Consta de dos partes: el módulo cliente y el módulo servidor. Cada una de ellas tiene su propio conjunto de subcomandos. La acción se inicia a partir de subcomandos ingresados al cliente FTP, quien dispara los subcomandos necesarios del servidor FTP.

El cliente FTP contempla subcomandos para establecer una conexión con un servidor FTP  remoto, navegar bibliotecas y directorios, crear y suprimir archivos, y por supuesto, transferirlos.

NOTA: Se considera cliente FTP al sistema que inicia la petición de transferencia independientemente de dónde residan los archivos a transferir y el sentido de la misma.

Los subcomandos del cliente FTP pueden ingresarse uno por vez, cada vez que se requiera una operación (Modo manual), o incluírse dentro de un script FTP que se ejecutará batch bajo una planificación previamente definida (Modo automático).

Si se utiliza la modalidad manual, el usuario debe realizar los siguientes pasos:

  • Arrancar el cliente FTP, especificando la dirección IP del sistema remoto (o en su defecto el nombre del sistema).
    • Ingresar un identificador de usuario y contraseña.
    • Ejecutar la secuencia de subcomandos FTP necesarios (GET, PUT, etc.)
    • Finalizar el cliente FTP.

Cuando es necesario ejecutar transferencias masivas periódicamente, el ingreso manual de subcomandos del cliente FTP puede tornarse una tarea tediosa. Por lo tanto, es importante considerar la automatización del proceso desde un trabajo batch. También es aplicable la ejecución automática cuando la transferencia se invoca, por ejemplo, desde otra aplicación.

En este tip, tratamos el caso de una transferencia iniciada por un cliente AS/400, desde o hacia otro sistema AS/400. Parte de lo aquí tratado es aplicable a la ejecución desatendida de transferencias, iniciadas por un AS/400 desde o hacia PC. En este caso, debe disponer de un FTP Server en la PC con la que se comunica.

Ejemplo de implementación de FTP batch – Modo automático

Para llevar a cabo el proceso de automatización de FTP asumimos, en este caso,  que un AS/400 es el sistema que está solicitando la transferencia de archivos (es decir, toma el rol de cliente FTP) hacia otro AS/400 que tiene instalada la porción servidor. Además del/los archivos a transferir, deben intervenir en el proceso los siguientes elementos:

  • Un archivo que contenga los subcomandos FTP (script)
  • Un programa CL que iniciará el FTP y ejecutará los subcomandos del script.
  • Un archivo vacío que almacenará los mensajes generados luego de la corrida del script.

1) Creación del Script de subcomandos FTP:

AS400-automatizar-FTP-1


La siguiente pantalla muestra como sería el script FTP, con las características de la transferencia que se desea realizar. Este debe estar almacenado como miembro fuente de tipo TXT dentro de un objeto *FILE PF-SRC:

La sentencia 0001.00 debe contener el nombre del usuario y la contraseña del sistema remoto.  Las sentencias que le siguen especifican los subcomandos FTP que bajan datos al cliente. Luego se finaliza la sesión FTP (subcomando quit).

2) Creación del Programa CL

Deberá generarse también el código CL necesario para el arranque del FTP y la ejecución del script:

AS400-automatizar-FTP-2

La sentencia 0002.00 efectúa una alteración temporal del INPUT del FTP para que los subcomandos a ejecutar sean los del miembro FTPTXT mostrado en el paso anterior. En la sentencia que sigue, se redirecciona la salida de los mensajes del servidor FTP al miembro FTPLOG.  Luego, el comando STRTCPFTP  arranca el cliente FTP especificando la dirección IP del sistema remoto. Este mandato es el que, en definitiva  da origen a la ejecución  del  script FTP. Luego se eliminan las alteraciones temporales y finaliza el programa.

3) Programación de la transferencia

Para que la ejecución del programa CL no dependa de una invocación manual, puede agregarse una entrada a la lista de trabajos planificados desde el comando WRKJOBSCDE, o dispararla desde otro proceso, etc.

4) Archivo con mensajes de ejecución del script

Luego de la ejecución del programa CL, FTPLOG contendrá lo siguiente:

AS400-automatizar-FTP-3

Si el miembro FTPLOG no existe, es creado en forma automática; en caso contrario, el output generado por cada corrida del programa CL se agrega a continuación de las entradas producidas por la corrida previa. Es aconsejable eliminar este miembro luego de cada corrida.

Para tener en cuenta...

  • El TCP/IP en AS/400 incluye tanto el módulo cliente como el servidor de FTP. En PC, no siempre se dispone del módulo servidor. Por ejemplo, CA/400 no ofrece FTP Server, pero sí lo ofrece Reflection, o Windows NT.
  • Observar en el log generado luego de la corrida de un script, que si existiesen errores, el proceso no se detiene y aparecerán mensajes de error como consecuencia de errores anteriores (Ej: si el usuario o la contraseña son incorrectos, se mostrará un mensaje de error para esta sentencia y, en el ejemplo, para los “gets” que siguen hasta el quit que finaliza el script).
  • FTP puede procesar datos almacenados en el IFS (Integrated File System).
  • FTP puede utilizarse solamente para la transferencia de archivos físicos, lógicos o de salvar. Para transferir otro tipo de objetos, un programa por ejemplo, deberá salvarse previamente en un archivo de salvar y enviar este último vía FTP. En el sistema destino, deberá restaurarse el objeto salvado.
  • Al menos que se esté usando FTP anónimo, un identificador de usuario y su password siempre son requeridos.
  • Para implementar protecciones sobre las posibilidades del FTP, es posible agregar “exit programs” sobre los “exits points” provistos por OS/400.
En el caso de transferencias desde AS/400 hacia PC, se podrá aplicar la misma técnica desarrollada anteriormente, teniendo en cuenta que la PC debe tener instalado un servidor FTP.

Copyright Teknoda S.A.

IMPORTANTE:
“Notas técnicas de AS/400" se envía con frecuencia variable y sin cargo como servicio a nuestros clientes AS/400. Contiene notas/tutoriales/artículos técnicos desarrollados en forma totalmente objetiva e independiente. Teknoda es una organización de servicios de tecnología informática y NO comercializa hardware, software ni otros productos.
Si desea suscribir otra dirección de e-mail para que comience a recibir las Notas Técnicas AS400, envíe un mensaje desde esa direcciónletter400@teknoda.com, aclarando nombre, empresa, cargo y país del suscriptor.

AS400 , iSeries y System i son marcas registradas de IBM. IBM no es el editor de esta publicación y no es responsable de la misma en ningún aspecto. La información contenida en esta publicación ha sido generada por nuestros especialistas a partir de fuentes consideradas confiables y del ejercicio profesional cotidiano. No obstante, por la posibilidad de error humano, mecánico, cambio de versión u otro, Teknoda no garantiza la exactitud o completud de la misma.
COPYRIGHT TEKNODA S.A. PROHIBIDA SU REPRODUCCION TOTAL O PARCIAL SIN CONSENTIMIENTO DE TEKNODA


Comentarios  

0 #4 Juan Perez 30-09-2016 16:03
Es correcto, pero cuando es usando el puerto 22 no sirve esta opcion hay que usar: sftp
Citar
0 #3 Teknoda1 13-09-2016 20:13
Cito a Carlossantiago:
Repasando el ejemplo si el fichero que pones en el FTPTXT va cambiando, por ejemplo F0001, F0002, etc
Como se podria hacer????
Gracias


Te paso un link que puede ayudarte para lo que necesitas:
http://iseries-peru.blogspot.com.ar/2011/03/procesar-multiples-archivos-en-ftp.html
Citar
0 #2 Carlossantiago 13-09-2016 17:25
Repasando el ejemplo si el fichero que pones en el FTPTXT va cambiando, por ejemplo F0001, F0002, etc
Como se podria hacer????
Gracias
Citar
0 #1 juan 20-07-2011 16:18
como hago para enviar un archivo desde una lapto con AS 400 a otra lapto con As 400 conectadas por medio de wifi
Citar

Escribir un comentario


Código de seguridad
Refescar

Lea en AS/400 Tips . . .

Infografía comparativa Comandos de SAVE RESTORE del AS400

save_restore_thumbnail

Conozca y diferencie visualmente qué partes del almacenamiento resguarda y restaura cada comando y cada opción del Menú Salvar y Restaurar. PUEDE DESCARGAR UN FORMATO POSTER PARA IMPRESION.

Para lograr un entendimiento conceptual es de suma utilidad contar con una ayuda gráfica, que  permita diferenciarlos a primera vista. Nuestro equipo de especialistas ha desarrollado el "Infographics" que presentamos con este tip. Por supuesto, el mismo debe complementarse con la información detallada de los innumerables parámetros de cada comando, pero es un útil marco de referencia  para recordar el área de injerencia de cada comando.

LEER ESTE ARTICULO >>>>>

 

 

 

Copyright © 2017 Teknoda tips - Tecnologia SAP Netweaver - IBM AS400 - System i - iSeries. Todos los derechos reservados.