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.

5 comentarios:

  1. Hola, he aplicado todo lo que has detallado y resulta que despues del ovrprtf me sale el error CPF4208 fichero de impresion no abierto codigo de error 0, ....alguna idea para solucionarlo.
    Gracias

    ResponderEliminar
  2. Buenos dias Carlos. Nuestra servidor tiene instalada la version 5.4, sera posible instalar este producto sobre esta version?. Actualmente estamos planificando el upgrade del sistema operativo pero me esta haciendo mucha falta la conversion a pdf. SAludos y muchas gracias

    ResponderEliminar
    Respuestas
    1. Hola Leonardo,
      que yo sepa, no puedes instalar este producto en 5.4, es sólo a partir de la 6.1.

      Mientras tanto, probablemente ya las habras visto, pero hay otras soluciones con impresoras virtuales PDF como la que propone mi gran amigo y excompañero Antonio en su blog: http://conduceentrelaniebla.blogspot.com.es/2011/03/convertir-listados-as400-pdf.html

      Mucha suerte,
      Carlos Bartolomé.

      Eliminar
  3. Hola tengo ya las licencias bien ,pero implemento como me dicen pero no funciona...no sale error pero no deja archivo en repositorio. la implementacion la tengo asi:
    DCL VAR(&DSTCOD) TYPE(*CHAR) LEN(3)
    OVRPRTF FILE(QSYSPRT) DEVTYPE(*AFPDS) +
    TOSTMF('/EPM/rtfyfisa') WSCST(*PDF)
    Ahora tengo dudas que va en el parametro FILE????

    ResponderEliminar
  4. HOLA AMIGO BUENAS TARDES, ES UN GUSTO SALUDARTE Y EN HORA BUENA
    ESPERO QUE TODO ESTE BIEN Y QUE TU PERSONA TAMBIEN. SALUDOS A TI Y TU FAMILIA

    ResponderEliminar

Muchas gracias por tus comentarios.