WRKPDF para CoPrint AutoPDF

Coprint soporta un tipo de colas de salida de spool especiales para la generación de documentos PDF automáticamente, sin ninguna intervención manual.

  • si una cola se llama PDFxxx y está en una bib PDFxxx, ya casi tenemos AutoPDF!

AutoPDF es fácil

  • Simplemente, cualquier listado que se coloque en una cola PDFxxxxx se convierte y archiva como PDF.
  • pueden personalizarse las colas de salida para diferentes objetivos y/o servidores Coprint.
  • muy facilmente pueden establecerse directorios en el ifs por cada usuario, y que todo lo que vaya a la cola pdf/usuario se grabe en su carpeta,
  • igualmente pueden crearse colas para archivo de facturas emitidas, informes de ventas etc etc.
  • Como un ejemplo Coprint incluye el comando WRKPDF, que simplemente muestra el explorador de archivos con la carpeta asociada al usuario activo.
  • Cada fichero pdf tiene en su propio nombre algunas de las propiedades del spool como nombre de fichero, datos de usuario, etc.

Esta función también se puede combinar con soluciones de aplicaciones Web, tal como RpgForWeb o HATS.

configuración

veamos como conseguir que funcione Coprint AutoPdf.

crear la biblioteca

  • primero crear una biblioteca con nombre que comience por PDF, tal como
    • CRTLIB LIB(PDF) AUT(*ALL) TEXT('para pdf auto coprint')
    • una bib llamada simplemente PDF es lo más simple si solo se quiere una bib para colas pdf.
    • importante: el nombre de la bib max es 8 posic.
  • añadir la bib a la lista general cambiando el valor de WRKSYSVAL QUSRLIBL
    • con esto se consigue que los usuarios puedan mover listados a la cola PDFxxxxx en lugar de tener que moverla a PDFxxxxx\PDFxxxxx
  • para más lio se pueden crear varias bibliotecas PDFxxx conteniendo colas PDFxxxx

crear colas de salida pdf en la bib y asociarlas con un Coprint Server

  • con paso 312 crear/asociar cola PDFxxxx en lib PDFxxxx
  • con paso 302 asociar la cola PDFxxxx con el CoprintServer XXXX (el que generará los pdf)
    • aquí se puede incluso definir un “adorno” de impresión.

configurar el ini de cada CoPrint Server

  • crear una seccion en el CoPrintIni para cada lib PDFxxxxx tal como el ejemplo:
    • [PDF-CPI]
      • Printer=PDFcreator ← (opcional) nombre (o parcial) de la impresora pdf a forzar en este Coprint
        • usar “docucom” o “pdfcreator” por ejemplo, cpiPDF para el driver cpiPDF/pdfX.
      • Mode=X ← (opcional) modepdf a forzar en este Coprint (X=cpiPDF, F=SourceForge PDFCreator, D=Docucom)
      • Save=\\mi400\tmp\pdf\&user&\Auto_&job&_&user&_&jobnum&_&file&_&splnum_&usrdta&_&outq&.pdf
      • las variables &algo& se cambian por los atributos de cada spool al generar cada pdf
      • la unidad (\\mi400) puede cambiarse a unidades locales o de red como \\192.1.2.3\
    • en la seccion “General” es recomendable indicar que modo y driver se usará para todos los PDF:
    • [General]
      • modePDF=X ← opcional, con esto se obliga que este coprint use siempre este modepdf
      • printerPDF=pdfcreator ← opcional, obligar el uso de esta impresora pdf
        • usar cpiPDF o docucom o pdfcreator o el nombre del driver de impresora pdf a usar en este pc

relación entre ini [PDF-xxxxx] y bibliotecas PDFxxxxx

:!: Esto de tener varias bibliotecas PDF+++ sólo será necesario en poquísimos casos, en general será suficiente con tener una sola biblioteca con nombre PDF y dentro de ella varias colas PDF++++ creadas con paso 312 y asociadas con paso 302.

Se pueden tener varias bibliotecas especiales con nombre PDF o PDFxxxxx, y en cada una pueden existir cualquier número de colas de salida con nombre PDFxxxxx. El nombre de bib maximo es de 8 pos.

Por cada biblioteca especial (y no por cada cola) debe haber una entrada ini en el CoprintServer que se desee emplear, la entrada de seccion del ini debe ser en formato [PDF-xxxxx]
donde las xxxxx son las 5 posic max a la derecha de PDFxxxxx del nombre de biblioteca, para una biblioteca PDFTEST debe haber una seccion ini [PDF-TEST]

dentro de la sección deben existir los valores modePdf= y Save= y Printer= tal como se explica mas arriba).
Ejemplo: si una bib se llama PDFMKT habría que asociarla con algun ini [PDF-MKT].

[PDF-MKT]
modepdf=X
printer=cpipdf
save=\\mi400\tmp\pdf\&user&\&&DT2&&.pdf

La biblioteca super especial PDF (es decir, una bib que solo se llama PDF) se asocia con una seccion ini [PDF-CPI], por lo que si se comete la tonteria de crear otra bib PDFCPI usaría la misma entrada de ini.

variables &algo& y &&algo&&

dentro de la entrada Save= del ini se soportan variables como

  • cualesquiera caracteres normales
  • &user& el id del usuario del spool que origina el pdf
  • &job& el jobid del spool, tal como el nombre de la pantalla
  • &jobnum& el num del job del spool
  • &file& el nombre de fichero, tal como QSYSPRT
  • &splnum el num del spool, un numerador por si hay varios spooles del mismo job y spool-file
  • &usrdta& el texto “datos de usuario” del spool
  • &outq& el nombre de la cola de salida
  • &&DT&& fecha y hora en formato yymmddhhmmss
  • &&DT2&& fecha y hora separadas con subrayado, tal como 101231_235959

:-) y eso ha sido todo!

 
/kunden/homepages/8/d674751560/htdocs/cpies/doc/data/pages/coprint/wrkpdf.txt · Última modificación: 4/04/2017 06:31 (editor externo)
[unknown button type]
 
Excepto donde se indique lo contrario, el contenido de este wiki esta bajo la siguiente licencia: CC Attribution-Noncommercial-Share Alike 4.0 International
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki