[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Sep 2004
    Beiträge
    327

    PDF aus 5250 heraus anzeigen

    Hallo,
    um dies zu realisieren muss die PDF Datei auf einem verbundenen Server Laufwerk liegen. Kann IFS oder ein anderer Server sein. Der Nachteil hier ist, dass die Berechtigungen sitzen müssen. Über STRPCCMD kann man die PDF Datei dann anzeigen.
    Als zweite Variante könnte man das PDF in einem BLOB Feld speichern. Ein PC Programm wird über die 5250 Sitzung aufgerufen (lokal installiert), holt die PDF aus dem BLOB Feld heraus und zeigt es über den installierten Viewer an. Hier habe ich kein Berechtigungsproblem, aber es muss lokal das PC Programm installiert sein.

    Ich würde gerne auf das PC Programm verzichten, aber die BLOB Variante beibehalten.

    Welche Variante gibt es noch? Wie habt Ihr das realisert?
    Eventuell über JAVA Befehle?

    Danke.
    Gruß Klaus

  2. #2
    Registriert seit
    Jul 2001
    Beiträge
    2.646
    Zitat Zitat von itec01 Beitrag anzeigen
    Hallo,
    um dies zu realisieren muss die PDF Datei auf einem verbundenen Server Laufwerk liegen.
    Wurde da PDF auf dem PC-Server erstellt? Oder auf der i? Recht einfach wäre, das auf der i ins IFS zu legen, ein kleines Net.Data-Script zu erstellen, so daß das PDF per Mausklick im 5250 auf einen Link vom Browser angezeigt werden kann...

    -h
    www.RZKH.de
    IBM Champion 2022, 2023, 2024
    IBM i Community Advocate https://www.youracclaim.com/badges/6...c-7ad4ba147af6
    Common / CEAC
    http://pub400.com

  3. #3
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Das hängt nun mal von vielen Faktoren ab.
    Nicht jede 5250-Emulation unterstützt STRPCO, so dass schon mal STRPCCMD ausfallen kann.
    Hast du grafische Oberflächen realisiert, so lässt sich das dort sicherlich mit "hidden"-Felder realisieren, die dieses dann von der Clientseite zur Ausführung gebracht werden.
    Die meisten Tools schaffen das.
    Die einfachste Möglichkeit ist sicherlich Java, da ausser der JVM keine Installation (CA) erforderlich ist.
    Diese kann dann einfach per SQL/DTAQ oder sonstwie auf die Aktion warten.
    Ebenso ist dies mit .NET möglich, wobei da allerdings wieder installierbare IBM-Ressourcen benötigt werden.
    STRPCCMD ist sicherlich die einfachste da keine Kenntnisse über die Verbindung nötig sind.
    Seit Windows 10 gibt es aber Probleme, wenn der User noch nicht auf das verbundene Laufwerk zugegeriffen hat, ist auch kein programmtechnischer Zugriff mehr möglich, was allerdings für alle Versionen gilt.

    DIE Lösung schlechthin gibt es nicht.
    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

  4. #4
    Registriert seit
    Sep 2004
    Beiträge
    327
    Zitat Zitat von holgerscherer Beitrag anzeigen
    Wurde da PDF auf dem PC-Server erstellt? Oder auf der i? Recht einfach wäre, das auf der i ins IFS zu legen, ein kleines Net.Data-Script zu erstellen, so daß das PDF per Mausklick im 5250 auf einen Link vom Browser angezeigt werden kann...

    -h
    Das PDF wurde auf der System i mit Hinterblendung von Grafik erzeugt. Ins IFS zu legen ist so ein Thema, weil die Berchtigungslogik nicht sehr gut gelöst ist, deshalb die Idee mit dem BLOB und dem PC Programm. Dachte, dass es eventuell eine Möglichekeit gibt über QSH den lokalen Viewer aufzurufen. Die PDF Datei, klar, muss dann auch irgendwo liegen.

    Danke.

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Wenn du die PDF im BLOB hast, muss sie da auch wieder raus.
    Das kannst du auf der AS/400 machen, dann hast du aber wieder dein IFS-Problem.
    Also benötigt du einen Client, das aus dem BLOB erst die PDF lokal erstellt und dann eben zur Anzeige bringt.
    Das kann auch, wie Holger schon sagt, ein browserbasierter Weg sein, der dann mittels JScript (läuft im Client) und SQL die PDF aus dem BLOB ausliest.
    Net.Data läuft aber auf der AS/400 und kann daher nicht auf den Client zugreifen und schwups hast du wieder dein IFS-Problem.
    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

  6. #6
    Registriert seit
    Sep 2004
    Beiträge
    327
    Zitat Zitat von Fuerchau Beitrag anzeigen
    Das kann auch, wie Holger schon sagt, ein browserbasierter Weg sein, der dann mittels JScript (läuft im Client) und SQL die PDF aus dem BLOB ausliest.
    Das klingt gut über JScript dies zu realisieren. Nur, wie rufe ich es auf. Hast Du eventuell einen Quellcode Schnipsel, wie man das JScript über den 5250 aufruft.
    Danke.
    Gruß Klaus

  7. #7
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Dann reden wir aneinander vorbei!
    Da du nun 5250 sagst und du bestimmt sicherstellen kannst, dass alle Clients CA oder Emulationen mit PCO-Unterstützung haben, dann nimm doch STRPCCMD.
    Sorge nur für einen kurzen Weg des Dateipfades (max. 123), dann kannst du mittels STRPCCMD CMD('"\\AS400Name\Freigabe\PDF-Name.PDF"') die Anwendung, sofern sie zugeordnet ist, starten.
    Die Anführungsstriche sind erforderlich, damit ggf. Leerzeichen nicht zu Problemen führen.
    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

  8. #8
    Registriert seit
    Sep 2004
    Beiträge
    327
    Hallo,
    sorry, habe mich unklar ausgedrückt. Die Sache mit STRPCCMD ist obsolet, weil die Rechte im IFS nicht gut gelöst sind. Zusätzlich die Probleme mit WIN10 und die User haben derzeit kein Laufwerk zur AS/400 gemappt. Deshalb soll hier nicht zwischengespeichert werden. Die Alternative wäre über den Weg von Dir mit JScript und dem SQL Zugriff auf die Datei mit BLOB. Mir fehlt hierzu die Logik für den Aufruf aus der AS/400 heraus. Daher die Frage mit dem Sourecode Schnipsel. Wenn Du mir kurz was geben könntest, dann kann ich es probieren und dann vorschlagen.
    Danke.
    Gruß Klaus

  9. #9
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Ich weiß nur, dass es JScript gibt, kann es aber nicht (nur lesen).
    Per Browserlösung müsstest du dir ein HTML-Dokument erstellen lassen, dem du als Parameter den Namen des Dokumentes übergibst.
    Dieses lädt dann per JScript die PDF und speichert sie lokal z.b. in %TEMPT% um sie dann anzuzeigen.
    Bist du fit in
    - VBS (VB-Script)
    - WSH (Windows Scripting Host)
    - PS1 (Powershell)
    geht es natürlich auch damit, da alle diese Produkte bereits vorhanden sind und SQL-Zugriffe unterstützen. Diese könnten dann sogar auf das Ende des Prozesses warten um das Dokument auch wieder zu löschen, sonst hinerlässt du doch viel Müll.
    Die Aufrufe erfolgen per STRPCCMD mit dem lokal auf dem PC gespeicherten Script.
    Bei VBS könnte ich dir tatsächlich auch helfen (allerdings nicht kostenlos).
    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

  10. #10
    Registriert seit
    Jul 2001
    Beiträge
    2.646
    Zitat Zitat von itec01 Beitrag anzeigen
    Das PDF wurde auf der System i mit Hinterblendung von Grafik erzeugt. Ins IFS zu legen ist so ein Thema, weil die Berchtigungslogik nicht sehr gut gelöst ist, deshalb die Idee mit dem BLOB und dem PC Programm. Dachte, dass es eventuell eine Möglichekeit gibt über QSH den lokalen Viewer aufzurufen. Die PDF Datei, klar, muss dann auch irgendwo liegen.

    Danke.
    Die Datei in ein BLOB zu packen und dann via HTTP-Server auszuliefern, sollte aber auch machbar sein. Wenns schon von der i kommt, dann auf der i lassen

    -h
    www.RZKH.de
    IBM Champion 2022, 2023, 2024
    IBM i Community Advocate https://www.youracclaim.com/badges/6...c-7ad4ba147af6
    Common / CEAC
    http://pub400.com

  11. #11
    Registriert seit
    Jul 2001
    Beiträge
    2.646
    Zitat Zitat von Fuerchau Beitrag anzeigen
    Ich weiß nur, dass es JScript gibt, kann es aber nicht (nur lesen).
    Per Browserlösung müsstest du dir ein HTML-Dokument erstellen lassen, dem du als Parameter den Namen des Dokumentes übergibst.
    Dieses lädt dann per JScript die PDF und speichert sie lokal z.b. in %TEMPT% um sie dann anzuzeigen.
    Der HTTP-Server kann entweder direkt einen Link auf die PDF-Datei im IFS setzen oder per SQL das Blob ins HTML einbinden. Müsste gehen, aus der Hüfte würde ich aber die IFS-Variante bevorzugen mit passendem Doctype - dann muss der Client nur PDF anzeigen können - was man mal voraussetzen kann.
    www.RZKH.de
    IBM Champion 2022, 2023, 2024
    IBM i Community Advocate https://www.youracclaim.com/badges/6...c-7ad4ba147af6
    Common / CEAC
    http://pub400.com

  12. #12
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Nun ja, der PDF-Reader holt sich dann das Dokument selber über eine HTTP-Adresse.
    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

Similar Threads

  1. Bilder anzeigen
    By AKS1 in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 10-11-16, 08:57
  2. Antworten: 2
    Letzter Beitrag: 31-12-15, 10:52
  3. Antworten: 6
    Letzter Beitrag: 09-10-14, 17:52
  4. Ftp-Verbindungen anzeigen
    By sirdidi in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 11-01-02, 12:12
  5. Zeichensatz anzeigen
    By Burgy Zapp in forum NEWSboard Server Software
    Antworten: 0
    Letzter Beitrag: 03-04-01, 19:07

Tags for this Thread

Berechtigungen

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