Mostrando entradas con la etiqueta IBM. Mostrar todas las entradas
Mostrando entradas con la etiqueta IBM. Mostrar todas las entradas

martes, 15 de abril de 2014

QSHELL para recuperar e importar a un fichero la lista de archivos de una carpeta del IFS.

   Recientemente me encontré con una situación en la que necesitaba recuperar en un fichero la relación de archivos que contenía una carpeta del IFS, por lo que decidí hacerlo usando comandos del interprete de comandos QSHELL que tiene el AS400, así que comparto aquí la forma en la que lo hice por si a alguien le es de utilidad. Es muy fácil.

   A continuación vemos las poquitas sentencias CL necesarias para éste ejemplo:

CRTPF      FILE(LIBRERIA/ARCHIVO) RCDLEN(1024)
MONMSG     MSGID(CPF0000)                        
CHGVAR     VAR(&CMD) VALUE('ls -R /FTP/*.cbs > /qsys.lib/libreria.lib/archivo.file/archivo.mbr')
STRQSH     CMD(&CMD)                              
MONMSG     MSGID(CPF0000 QSH0006 QSH0007) EXEC(DO)
(TRATAMIENTO DE ERRORES)
ENDDO

   Si todo ha ido bien, el interprete QSHELL nos habrá dejado en LIBRERIA/ARCHIVO una relación de todos los archivos tipo *.cbs (por ejemplo) y ya podremos tratar cada registro.

     Lógicamente el comando acepta múltiples parámetros, esto es sólo un ejemplo de la aplicación de QSH o QSHELL para acometer una solución puntual, pero tanto el comando ls como QSH en general tiene muchos más comandos y posibilidades.

   Qshell is un conjunto de utilidades basadas en estándares POSIX and X/Open que forman parte del entorno QSHELL i5/OS PASE (Portable Application Solutions Environment) el cual proporciona muchas soluciones y utilidades que se ejecutan como programas de i5/OS PASE y que incluyen comandos estándar.

    Si queremos informarnos bien de las posibilidades de QSHELL aquí tenemos un enlace en el IBM Knowledge Center (el enlace es para la versión 6.1), busca tu versión si no es ésta:


Saludos.
Carlos Bartolomé.

lunes, 21 de marzo de 2011

Generar PDF en AS400 / iSeries Versión 6.1 fácilmente.

Desde la versión 6.1 ya se pueden generar PDF,s fácilmente en el AS400.

Si no tienes instalado el producto INFOPRINT SERVER, esta es una opción interesantísima y con muchísimas aplicaciones para generar documentos PDF. Una de las más interesantes es la facilidad con la que puedes ubicar los archivos y nombrarlos de forma dinámica. Más adelante veremos esto.

Lo primero que debemos comprobar es que tenemos instaladas las siguientes opciones del sistema operativo.

PROGRAMA

OPCION

DESCRIPCION

5761SS1

3

Soporte de directorio base ampliado

5761SS1

33

Entorno soluc aplic portables (PASE)

5761TS1

*BASE

IBM Transform Services para i5/OS

5761TS1

1

Transformaciones - Transf de AFP a PDF

Podemos verlo en la opción 11 del menú LICPGM al que podemos acceder tecleando GO LICPGM:

El producto 5761TS1 es gratuito y viene con los CD,s del Sistema operativo.

Para generar documentos PDF el PRTF debe tener las siguientes características:

DEVTYPE(*AFPDS) TOSTMF(‘ruta donde se guardará el pdf’) WSCST(*PDF)

¿Cómo implementamos estas opciones?

Pues con CRTPRTF, CHGPRTF o bien con OVRPRTF a gusto del consumidor.

El parámetro TOSMTF

TOSTMF nos permite especificar el directorio o el nombre del archivo continuo donde irá el documento PDF generado en el IFS. Hay que tener en cuenta dos detalles importantes: Si se especifica un directorio, éste debe existir al ejecutar la aplicación y si se especifica el nombre de un archivo continuo, éste no debe existir

Un ejemplo de generación automática del nombre del fichero:

OVRPRTF FILE(QSYSPRT) DEVTYPE(*AFPDS) TOSTMF(‘/mispdf/2011’) WSCST(*PDF)

Si no indicamos nombre de fichero en el parámetro TOSTMF el fichero que se generará será QSYSPRTxxxxxx.pdf, donde xxxxxx es un valor que determina el sistema operativo para garantizar la unicidad del nombre del archivo.

Un ejemplo de generación que incluye el nombre del fichero:

OVRPRTF FILE(QSYSPRT) DEVTYPE(*AFPDS) TOSTMF(‘/mispdf/2011/as400.pdf’) WSCST(*PDF)

No se genera archivo de impresora.

Este es un aspecto a tener en cuenta. Si el fichero de impresora está preparado para generar el PDF de alguna de las tres maneras que hemos comentado, no se generará el fichero de spool. Directamente se generará el fichero pdf en el IFS.

Esta característica nos evita el tener que trabajar con colas de datos para saber si el fichero de impresora se ha procesado por el transcriptor. Detalle que en según qué situaciones es necesario asegurar para ejecutar ciertos procesos de negocio. En este caso sabemos que en cuanto se cierre el fichero de impresora el pdf está generado.

¿No tienes suficiente?

Sinceramente, creo que esta es una interesantísima opción que nos permite dejar volar la imaginación para aplicarla a ciertos procesos de negocio.

En cualquier caso, si necesitas opciones más puntuales necesitarás ver si el IBM Infoprint Server te puede ayudar. Este es un programa producto bajo licencia que proporciona un superconjunto de las nuevas funciones para archivos PDF. Infoprint Server te permite muchas más opciones de manejo de archivos pdf.

miércoles, 27 de octubre de 2010

Drivers AFP para Windows 7.

Llevo tiempo pegando rodeos a la hora de trabajar con AFP debido a que suelo ir con mi portátil con Windows 7 y no había manera de encontrar los drivers AFP de IBM para esta versión de Windows.


Ni usando las opciones de compatibilidad había conseguido que funcionase, así que esta semana, que he tenido que hacer otro informe con AFP me he alegrado de haber encontrado la versión adecuada:


1) Controlador AFP para sistemas de 32 bits:
ftp://public.dhe.ibm.com/as400/products/clientaccess/win32/afpprinter/wi N32/

2) Controlador AFP para PCs con sistema operativo de 64 bits de procesadores Intel Itanium:

ftp://public.dhe.ibm.com/as400/products/clientaccess/win32/afpprinter/ia 64/

3) Controlador AFP para PCs con sistema operativo de 64 bits AMD o Intel Xeon:

ftp://public.dhe.ibm.com/as400/products/clientaccess/win32/afpprinter/am D64/

Y ojo, aquí parece aconsejable leer el README, ese pobre fichero desgraciado que ninguno leemos y cuyo desprecio tantas horas tontas nos ha costado.