[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Jun 2007
    Beiträge
    12
    Die Methode mit der RTF-Datei und dem Hin-und-Herkopieren habe ich schin ausprobiert. Es gibt dazu ein Dokument von Rochester-Initiative. Leider sind RTF-Dokumente sehr groß und somit bemötigen die Kopiervorgänge relativ viel Zeit (bis zu 40 Sek.). Im Dialog nicht brauchbar.

    Meien Idee ist, eine Vorlage in WORD 2003 als XML zu speichern, diese auf die AS/400 zu kopiren (1x); Innerhalb der RPG-Anwendung zu verändern und dann mit STRPCCMD Word 2003 aufzurufen mit dem Link auf das XML-Dokument auf der AS/400.

    Werde mal probieren, ob es funktioniert. Sollte auf jeden Fall schneller sein.

    Bis hierher erstmal Danke für Deine Hilfe. Wenn ich ein Ergebnis habe werde ich es hier schreiben.

    So long.

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.954
    Die XML-Worddateien sind mit Sicherheit größer als die RTF-Dateien und ggf. auch komplizierter zu bedienen (XML-Parser).

    Ausserdem solltest du nicht hin- und herkopieren sondern nur eine Basis sozusagen als Muster in einer PF verfügbar halten und bei Bedarf eben ins IFS kopieren.

    RTF's und XML's werden dann besonders groß wenn Bilder oder Logos enthalten (eingebettet) sind.
    Diese werden dann meist als Expanded-Hex abgelegt.

    Besser wäre für solche Fälle, Bilder oder Logos nicht einbetten sondern verknüpfen. Hier wird dann nur ein Pfadverweis eingetragen und das Bild nicht eingebettet.
    Vorteil: gringere Größe des Dokuments und ggf. Anpassung des Bildes/Logos ohne alle Dokumente anpassen zu müssen.

    Noch schlimmer wirds, wenn andere Anwendungen (z.B. Excel-Tabelle) eingebettet werden.
    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
    Nov 2006
    Beiträge
    102

    Word-kompatible Datei erzeugen

    Die RTF-Ausgabe kann man auch von der iSeries aus starten, ohne vorher ein Word-RTF mit dem genzen MS-Overhead zu erzeugen. Ein Beispiel dazu findest Du in NEWSolutions (Dez. 05 oder Anfang 06), auf Wunsch kann ich es zusenden.
    So ein schlankes RTF sollte mit Word schnell zu öffnen und zu ergänzen sein.
    Eine weitere Alternative wäre die Serienbrieffunktion mit Zugriff auf eine ODBC-Datenquelle. Auch das ist mit relativ wenig Makro-Programmierung lösbar.
    Noch ein Hinweis zu Word-Makros: Es gibt verschiedene Auto-Makros (z.B. AutoNew), die man in Dokumentvorlagen speichern kann, und die für solche Aufgaben sehr hilfreich sind.
    Viel Spaß
    MS

  4. #4
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.017
    Eine weitere Möglichkeit wäre evtl. noch Java. Es gab da mal vom Jakarta-POI Projekt den Bereich HWPF. Das wurde jedoch nie zu Ende entwickelt und wird es wohl auch nicht werden. Aber damit hatten wir z.B. aus der iSeries heraus "echte" Word-Dokumente (doc) erstellt, geöffnet und mit diversen Feldern (z.B. Adresse, Briefkopf, etc.) vorbelegt. Also einfache Funktionen wie z.B. Texte einfügen hat funktioniert. Aufwendigere wie z.B. Grafiken einfügen ging nicht.

    Gruß,
    KM

  5. #5
    Registriert seit
    Jun 2007
    Beiträge
    12
    Hallo KM,

    Danke für den Tip; werde mal entsprechend googeln. Den direkte Weg würde ich natürlich bevorzugen.

    Gruss
    Fibbes28

  6. #6
    Registriert seit
    Jun 2007
    Beiträge
    12
    Hallo Spateneder,

    vielen Dank für deine Hilfe. Ich werde mir die zitierten Artikel sicher anschauen.

    Gruss
    Fibbes28

  7. #7
    Registriert seit
    Jun 2007
    Beiträge
    12
    Hallo Spateneder.

    sende mir bitte mal das Beispiel aus der Newsolution; ich finde es nicht.

    Meine email-Adresse ist: fw@ubw.de

    Danke und schüne Grüße
    Fibbes28

  8. #8
    Registriert seit
    Feb 2001
    Beiträge
    20.954
    Beim CPYTOSTMF muss die CCSID 1252 angegeben werden.
    Des weiteren kann es ein Problem mit Zeilenschaltungen geben (CRLF), die zu einem anderen Aussehen führen können.

    Ggf. muss die Satzlänge der PF mit 32K definiert werden um die Zeilenumbrüche korrekt hinzubekommen, vielleicht ist die Datei ja auch kleiner als 32K so dass nur 1 Satz entsteht.

    Ein Problem sind dann eingebettete Grafiken, da diese durch CPYTOSTMF an der falschen Stelle CRLF erhalten.

    Vielleicht musst du sogar C-Funktionen verwenden und das IFS selber lesen/schreiben um der CRLF-Problematik aus dem Weg zu gehen.
    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

  9. #9
    Registriert seit
    Nov 2006
    Beiträge
    102
    Daten sind unterwegs! Das Beispiel arbeitet verwendet auch die von Fuerchau angesprochenen IFS-APIs.
    Gruß
    MS

  10. #10
    Registriert seit
    Feb 2001
    Beiträge
    20.954
    Wenn eine Datei im IFS erstellt wird bekommt sie die Berechtigung des Users und Default *PUBLIC *EXCLUDE.
    Ggf. nach dem CPY einen CHGAUT für die Datei machen.

    Teilweise wird die Objektberechtigung des übergeordneten Verzeichnisses übernommen.
    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

  11. #11
    Registriert seit
    Jun 2007
    Beiträge
    12
    Zur Information für alle:

    Wir haben nun eine Lösung gefunden; es ist eine Kombination aus RTF-File und dem Datenimport aus WORD.

    Alle Briefdaten wie Anschrift, Datum, Anrede usw. ändern wir nach COPYFRMSTMF direkt im Dialogprogramm auf der AS/400; die varablen Positionszeilen geben wird im gleichen Programm in eine Formulardatei (normale DB2) aus. Nachdem wir das geänderte Template zurückkopiert haben (COPYTOSTMF) wird WORD aufgerufen und ein Makro aufgerufen, das die Positionsdaten
    in das Dokument importiert.
    Es gibt leider nur einen kleinen Haken, den wir noch nicht gelöst haben: In dem Makro können wir keine Formatierungsbefehle einbinden (geht nicht oder wir können es nicht), so dass die Tabelle leichte Verschiebungen aufweist. Vielleicht finde ich dies auch noch.

    Wer Interesse an der Procedure hat oder eine ähnliche Aufgabenstellung kann sich gerne an mich wenden, ich werde ihm ein Beispiel zusenden. (Email: fw@ubw.de)

    Ich möchte es nicht versäumen, mich bei alle für die Hilfe und die guten Tips herzlich zu bedanken.

    Gruss Fibbes28

Similar Threads

  1. MS ado und Prepared Command
    By Asti in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 26-10-06, 09:39
  2. MS Access ODBC mit JOIN: SQL FEHLER666
    By olafu in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 05-10-06, 08:13
  3. Timestamp Feld von MS Access abfragen
    By andreas.lundschien in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 05-09-06, 14:55
  4. Geschwindigkeit beim Datentransfer via ODBC in MS ACCESS
    By mdhl in forum NEWSboard Server Software
    Antworten: 5
    Letzter Beitrag: 11-07-05, 09:18
  5. MS Access 97 - DB2 Problem
    By Salvi in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 21-05-04, 07:44

Berechtigungen

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