[NEWSboard IBMi Forum]
Seite 1 von 4 1 2 ... Letzte
  1. #1
    Registriert seit
    Feb 2005
    Beiträge
    3

    Question PDF in OUTQ drucken? (von IFS)

    hallo!

    ich suche eine möglichkeit pdf dateien die im ifs liegen in eine outq zu drucken (wenn möglich per cl oder rpg). ich habe auch schon per
    Code:
    CPYFRMPCD FROMFLR('AS400') TOFILE(*LIBL/QSYSPRT) FROMDOC(TEST.PDF) TOMBR(*FIRST) TRNTBL(*NONE) TRNFMT(*NOTEXT)
    das ganze versucht. bekomme aber immer folgende fehlermeldung: "PC-Dokument TEST.PDF nicht kopiert." die datei und der Pfad stimmen ganz sicher!

    gibt es noch andere möglichkeiten dies ohne fremdsoftware zu bewerkstelligen?

    danke, mfg christoph

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.206
    Die CPYFRMPCD/CPYFRMSTMF/CPYFRMIMPF akzeptieren nur Physische Dateien als Ziel !
    Um PDF's zu drucken benötigst du einen PDF-Reader. Ob es diesen für Java/Linux gibt weiß ich nicht, aber irgendwer hat so was bestimmt.
    PDF's können nicht direkt zum Drucker geschickt werden, da sie intern in Postscript gespeichert sind.
    Zusätzlich gibt es noch PDF-spezifische Informationen:
    - Version
    - Verschlüsselung
    - darf überhaupt gedruckt werden
    - usw. usw.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    Oct 2004
    Beiträge
    240
    Noch ein paar Fragen:

    Kann der Drucker PDF drucken? (neuere Kopierstationen mit Netzwerkanbindung können das)

    Sind die PDF's mehrseitig?

    Releasestand? Ab V5R3 gibts "a bisserl" was..

    Unter Linux: Dort ist Cups ja schon Standard. Cups bringt im Normalfall einen PDF-Filter mit. Auf einer Linux Maschine mit Cups, reicht ein lpr für den Ausdruck eines PDF-Dokumentes.

    AS/400 -> Linux: Leider bringt Cups auch einen eigenen lpr-Befehl mit. lpr's von der AS/400 (bzw. auch Pase) funktionieren da nicht.

    Abhilfe schafft die Java-OpenSource Jispsi. Für fertiges Commandline-Tool (PDF an Cups-Drucker drucken), einfach melden.

    reine Javalösung:
    Leider gibt es da am OpenSource-Markt noch nichts 100%iges. Man könnte das zwar über Umwege (JavaViewer und daraus wieder Bitmaps machen) realisieren, aber eigentlich bin ich mit meiner oben genannten Linux/Cups-Lösung ganz zufrieden.

    "Leider" wollen/können wir nicht auf V5R3 wechseln. Dort könnte man via DDS (Keyword AFPRSC) zumindest einzelne PDF-Seiten konvertieren. Ein kleines Java-Util könnte das "Aufsplitten" übernehmen.

    Robert P.

  4. #4
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.005
    Hallo,

    ich weiß nicht, ob das Thema noch aktuell ist. Ich habe jetzt auch nach langer Suche eine Möglichkeit gefunden, PDF-Dateien, die im IFS liegen per Programm (ohne manuellen Eingriff) über eine normale OUTQ zu drucken.
    Dazu habe ich auf der iSeries in der PASE-Umgebung Ghostscript installiert. Damit kann man PDF-Dateien in den PCL-Datenstrom konvertieren. Und PCL versteht eigentlich fast jeder Drucker.
    Anschließend wird diese PCL-Datei mit dem QSHELL-Befehl Rfile in eine OUTQ geschrieben und dort entsprechend ausgedruckt.
    Das Ganze habe ich jetzt in ein CL-Programm verpackt und es läuft bislang ohne Probleme. Auch die Antwortzeiten sind super.

    Gruß,
    KM

  5. #5
    Registriert seit
    Aug 2004
    Beiträge
    923
    Cool,

    ein Workaround dazu - den man auch noch in nem Jahr finden/abrufen kann - wäre nett...

    k.

  6. #6
    Registriert seit
    Oct 2004
    Beiträge
    240
    Ich lebe zwar mit meiner Lösung ganz gut, aber etwas neugierig bin ich schon:

    Welches Release hast du auf der iSeries?

    Welches (AIX) Version von Ghostscript hast du installiert? oder compiliert?

    Ich habe das auch mal versucht, allerdings haben mir da ein oder zwei Libs in der PASE-Umgebung gefehlt.
    Woher hast du die? oder ist bei V5R3 mehr dabei?

    Ich habe zwar auch eine AIX-PPC hier stehen, aber die Libs und compilierten Programme lassen sich meistens nicht in der PASE-Umgebung nutzen. Dürfte aber daran liegen das AIX-Release recht alt ist (V4Rx oder so).

    Robert P.

  7. #7
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.005
    Hallo Robert,

    wir haben auf der iSeries V5R3 laufen. Ich habe Ghostscript Version 8.53 für AIX 5.3 installiert. Die betreffenden Binaries habe ich von folgender Seite runtergeladen:

    http://aixpdslib.seas.ucla.edu/packa...ostscript.html

    Was hat in Deiner PASE-Umgebung gefehlt ?

    Heute habe ich festgestellt, dass seltsamerweise nicht mehr alles korrekt gedruckt wird, obwohl am Mittwoch alles noch richtig gedruckt wurde. Fehler erscheint keiner. Offenbar ein Druckertreiberproblem oder ein Problem mit der Schriftart. Ich verwende die DEVICE ljet4. Damit müsste man eigentlich auf den meisten Druckern drucken können. Muß jetzt erstmal schauen, wo das Problem liegt. Ist echt komisch.

    Gruß,
    KM

  8. #8
    Registriert seit
    Oct 2003
    Beiträge
    71
    Zitat Zitat von kuempi von stein
    Cool,

    ein Workaround dazu - den man auch noch in nem Jahr finden/abrufen kann - wäre nett...

    k.

    Was ist damit gemeit?

  9. #9
    Registriert seit
    Aug 2004
    Beiträge
    923
    Zitat Zitat von ratinger
    Was ist damit gemeit?
    Hello ratinger,

    ich habe das Wort "workaround" gebraucht und meinte aber damit eine "Schritt für Schritt"-Anleitung bezogen auf den Beitrag von KM.
    Laut Wikipedia ist ein workaround ja eher eine "provisorische Lösung", ich denke aber, dass im Softwarebereich jede Lösung die zufriedenstellend funktioniert eine sagen wir mal "gute" bzw. aktzeptable Lösung darstellt.

    Und wenn man nun im Web irgendwo ne Seite hätte, da wo man in ein zwei Jahren mal nachschlagen kann (wenn man dann evtl. selber das Problem hat), das wäre doch toll?

    kuempi

  10. #10
    Registriert seit
    Oct 2004
    Beiträge
    240
    Zitat Zitat von KM
    ...
    Was hat in Deiner PASE-Umgebung gefehlt?
    Ich glaub es waren libnsl.a und libqb.a
    (wobei libnsl.a für das cups-lpr wären).

    Ich denke, dass sich das beim nächsten Release bzw. der nächsten Maschine erledigt.

    Robert P.

  11. #11
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.005
    Also die libnsl.a ist bei uns vorhanden. Die libqb.a kann ich auch auf unserer Maschine nicht finden.

    Gruß,
    KM

  12. #12
    Registriert seit
    Jun 2001
    Beiträge
    727
    In OUTQ's bzw. Spoolfiles können beliebige Datenströme abgelegt werden.
    Wenn I5/OS diese nicht selbst handhaben kann, wie SCS, AFPDS, IPDS etc, sind diese vom TYP *USERASCII.
    Host Print Transform (HPT) macht das so und erzeugt intern PCL oder PPDS als *USERASCII, wenn du über eine RMTOUTQ mit TRANSFORM(*YES) druckst.
    Das gleiche passiert, wenn du über den Netserver (SMB-Server) eine OUTQ-Freigabe erzeugst und in diese z.B. mit einem PC druckst - der hier erzeugte Druckdatenstrom ist vom Druckertreiber auf dem PC abhängig und wird auf auf der I5 in der OUTQ vom Typ *USERASCII sein.
    Der Infoprint-Server hat einen PDF-Konverter (intern IPDS-->PDF) und dieser stellt auch PDF-Datenstöme als *USERASCII in der OUTQ ab.

    Dein prinzipieller Ansatz mit PASE und Rfile war schon richtig.
    Die im Bsp. angegebene Postscript-Datei mydoc.ps kannst du durch eine PDF-Datei mit Pfadangaben ersetzen.
    Den lpr kannst du dir schenken, wenn du bereits eine RMTOUTQ erstellt hast. Diese gibst du dann im OVRPRTF als Paramter OUTQ(...) mit an.

    Write the contents of stream file mydoc.ps
    to spooled printer device file QPRINT as unconverted ASCII data,
    and then use the CL LPR command to send the spool file to another system:
    Code:
    before='ovrprtf qprint devtype(*userascii) spool(*yes)'
    after="lpr file(qprint) system(usrchprt01) prtq('rchdps') transform(*no)"
    cat -c mydoc.ps | Rfile -wbQ -c "$before" -C "$after" qprint
    http://publib.boulder.ibm.com/infoce...zahz/rfile.htm

    Wichtig ist das der Netzwerkdrucker direkt PDF verarbeiten kann. Bei der PDF Erstellung ist darauf achtzugeben, das der Drucker die PDF Version unterstützt und die Schriften ggf. mit eingebettet sind.

Similar Threads

  1. AFPRSC --> PDF
    By jgv in forum NEWSboard Drucker
    Antworten: 1
    Letzter Beitrag: 28-11-06, 11:15
  2. PDF drucken
    By KM in forum NEWSboard Drucker
    Antworten: 1
    Letzter Beitrag: 20-09-06, 13:27
  3. Kopien von neuen Spools einer OUTQ
    By linguin in forum IBM i Hauptforum
    Antworten: 13
    Letzter Beitrag: 17-05-06, 14:42
  4. PDF aus RPG drucken
    By miro in forum NEWSboard Programmierung
    Antworten: 8
    Letzter Beitrag: 02-09-05, 15:09
  5. IFS und PDF
    By Pmartsch in forum NEWSboard Drucker
    Antworten: 1
    Letzter Beitrag: 29-07-04, 09:27

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •