[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Aug 2003
    Beiträge
    163

    Makro aus Programm aufrufen

    Hallo zusammen,

    kennt jemand eine Möglichkeit, wie ein Makro aus einem Programm aufgerufen werden kann?

    Herzlichen Dank im Voraus.

    Hubert

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Mal ne blöde Frage: Wozu?
    Du kannst immer noch per STRPCO und STRPCCMD Kommandos auf der PC direkt starten.
    Das Problem ist doch, dass jeder User Makros selber erstellen und auch modifizieren kann.
    Wie willst du da sicher sein, dass deins nochfunktioniert?
    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
    Aug 2003
    Beiträge
    163
    Zur Erläuterung:
    Ich muss umfangreiche Analysen durchführen, woher die Daten in etlichen Dateien kommen. Dazu habe ich ein Programm geschrieben, das in einer Subfile alle Felder einer Datei anzeigt. Dann kann ich jeweils ein Feld auswählen und die Source aufmachen, wo der Satz erzeugt wird (mit FNDSTRPDM finde ich dort die Einträge zum Feld). Meistens brauche ich jedoch die Umwandlungsliste. Dann kopiere ich den Feldnamen mit STRPCCMD in die Zwischenablage und öffne dieUmwandlungsliste per Makro. Mit diesem Makro wird dann auch nach dem Inhalt der Zwischenablage gesucht. Dieses Makro möchte ich jetzt aus dem Programm heraus aufrufen. Jetzt muss ich es jedes Mal manuell aufrufen.

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Da würde ich dann besser die QSH verwenden.
    Hier kannst du mit dem Kommando "grep" komfortabel in Dateien suchen und die gefundenen Ergebnisse zur Weiterverarbeitung ausgeben.
    Dann kannst du dir den ganzen PC-Teil sparen und bist sogar batchfähig.
    Passt auch für die IBM i:
    https://www.ibm.com/support/knowledg...ands/grep.html


    Vielleicht ist es aber auch günstiger CMOne mit X-Analysis zu verwenden als sich selber die Finger zu brechen und doch nie fertig zu 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

  5. #5
    Registriert seit
    Aug 2003
    Beiträge
    163
    Sorry, aber das bringt mich leider nicht weiter.

    In den Dateien (ich vermeide hier absichtlich den Begriff Datenbank) gibt es zahlreiche Redundanzen. Die Felder stehen teilweise in Relation zu Dataäreas oder Umwandlungszeit Feldgruppen. Zum Teil werden die Feldinhalte durch Abfragen im Programm erzeugt. Nadchdem auf eine neue Software auf Windows Servern umgestellt wurde, soll ich jetzt analysieren, was da in der Vergangenheit alles ablief, damit historische Daten für die Fachabteilungen später ohne AS/400 aufbereitet werden.
    Das funktioniert soweit auch ganz gut. Nur würde ich mir wünschen, dass ich das Makro, das die Spoolfile öffnet, aus dem Programm heraus aufrufen kann. Wenn es so eine Möglichkeit nicht gibt, muss ich eben manuell weitermachen. Übrigens: ich darf keine neue Software installieren.

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Nun ja, QSH (QShell) ist standardmäßig auf der AS/400, ähm IBM i, vorhanden.
    Dann noch mal gefragt:
    Wie öffnet das Makro die Spoolfile?
    Ggf. kannst du dies ja trotzdem ebenso per STRPCCMD durchführen (auch standardmäßig vorhanden).
    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

  7. #7
    Registriert seit
    Aug 2003
    Beiträge
    163
    Es ist ein stinknormales Makro:
    Code:
    [wait app]
    [wait inp inh]
    [pf15]
    [wait inp inh]
    [wait app]
    [wait inp inh]
    "2
    [tab field]
    [tab field]
    [tab field]
    [pf4]
    [wait inp inh]
    [wait app]
    [wait inp inh]
    [pf18]
    [wait inp inh]
    [wait app]
    [wait inp inh]
    "1
    [enter]
    [wait inp inh]
    [wait app]
    [wait inp inh]
    [enter]
    [wait inp inh]
    [wait app]
    [wait inp inh]
    [edit-paste]
    [pf16]

  8. #8
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Normal ist anders. Dies ist ja doch schon sehr veraltet;-).
    Mit diesen Makros bin ich nun nicht bewandert und ich kann auch nicht erkennen wo da ein Programmaufruf steckt.
    Mit den VBS-Macros kommst du da auch schon weiter.

    Aber wie gesagt, probier doch einfach folgendes aus:
    Am Anfang des Programmes oder Job's:
    STRPCO

    Wann immer du willst:
    STRPCCMD PCCMD('Name_und_Pfad_der_PDF') PAUSE(xxx)

    Falls Leerzeichen enthalten sind:
    STRPCCMD PCCMD('"Name und Pfad der PDF".pdf') PAUSE(xxx)


    Bei PAUSE(*YES) wartet dein Programm bis die PDF und der Prozess wieder zu ist.
    Bei PAUSE(*NO) macht dein Programm weiter und kann mehrere 100 Fenster ziemlich schnell öffnen.
    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
    Aug 2003
    Beiträge
    163
    Ich will keine PDF öffnen sondern eine Spoolfile, nämlich die Umwandlungsliste des Programms, das ich gerade gewandelt habe.

    Aber Du hast mich jetzt auf eine Idee gebracht: Ich erzeuge aus der Spoolfile ein PDF und kann dann darin suchen.

    Danke für den Tipp. So komme ich weiter.

  10. #10
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Da kannst du eher einen CPYSPLF in eine PF machen, dann kannst du per SQL suchen.
    Eine Suche in einer PDF ist leider nicht so einfach.
    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. RPG Programm per UDF aufrufen mit Rückgabewert
    By RegFor in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 27-02-18, 10:04
  2. CL-Programm aus C# mit Rückgabeparameter aufrufen
    By Armin in forum NEWSboard Programmierung
    Antworten: 16
    Letzter Beitrag: 04-03-16, 17:07
  3. Antworten: 2
    Letzter Beitrag: 19-02-16, 11:01
  4. Wie kann man über SQL ein I5-Programm aufrufen
    By MR-BN in forum NEWSboard Programmierung
    Antworten: 12
    Letzter Beitrag: 02-10-15, 16:40
  5. Batch-Programm aus RPG aufrufen?
    By hansr in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 28-11-02, 17:38

Berechtigungen

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