[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Jun 2010
    Beiträge
    24

    APIs oder CL-Commands nutzen?

    Hallo zusammen,

    wie ich ja in einem anderen Beitrag schon schrieb, mache ich eine Anwendung zur Drucker-/Outqerstellung und Verwaltung in PHP über ODBC.
    Ich habe bisher alles was ich brauchte über CL-Commands gemacht, was auch funktioniert.

    Nun bin ich über das Printer API - Handbuch für V5R3 gestolpert, und da tun sich mir zwei Fragen auf:
    • Ist es sinnvoller nur die APIs zu nutzen, oder sollte man die nur da nutzen, wo man mit CL-Commands nicht weiter kommt?
    • Ich habe schon gesucht, aber nichts gefunden: Gibt es bei den APIs Unterschiede zwischen V5R3 und V5R4? Hat da evtl. jemand einen Link?
    Schönen Gruß aus Kiel

    Jörg

  2. #2
    Registriert seit
    Aug 2001
    Beiträge
    2.928
    Grundsätzlich gilt:
    • CL-Commands haben ihre Berechtigung.
    • APIs liefern i.d.R. mehr und detailliertere Daten als CL-Commands.
    • Die Verwendung von List-APIs (anstatt CL-Commands mit Output in physische Dateien) liefert das Ergebnis wesentlich schneller, ist jedoch komplizierter zu programmieren.


    Laut IBM: Werden APIs nur der Gestalt verändert, dass:
    • Optionale Parameter hinzugefügt werden
    • Neue Datenstruktur-Unterfelder allenfalls am Ende der Datenstrukturen eingefügt werden.
    • Sind neue Datenstrukturen erforderlich werden neue Formate eingeführt.


    ... das stimmt auch (fast immer!).

    Die Änderungen in den APIs sollten in der Dokumentation des aktuellen (in Deinem Fall V5R4) erkennbar sein.

    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 5. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  3. #3
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    .. APIs und Commands sind ein Lehrbeispiel, des Einflusses von Namen auf die gefühlte Komplexität einer Software Komponente...
    In deinem Fall (Aufruf via ODBC) sind APIs eigentlich leichter verwendbar, man kann sie direkt als Stored Procedure verdrahten, oder über RPC oder REXEC aufrufen, Commands müssen vorher erst wieder in ein Programm verpackt werden (doppelt verpackt, denn ein Command ist die Verpackung eines Programms).
    Die oft beschworenen Performance Unterschiede kannst du getrost vernachlässigen, das verschwindet im Grundrauschen.

    D*B

    Zitat Zitat von bussibaer Beitrag anzeigen
    Hallo zusammen,

    wie ich ja in einem anderen Beitrag schon schrieb, mache ich eine Anwendung zur Drucker-/Outqerstellung und Verwaltung in PHP über ODBC.
    Ich habe bisher alles was ich brauchte über CL-Commands gemacht, was auch funktioniert.

    Nun bin ich über das Printer API - Handbuch für V5R3 gestolpert, und da tun sich mir zwei Fragen auf:
    • Ist es sinnvoller nur die APIs zu nutzen, oder sollte man die nur da nutzen, wo man mit CL-Commands nicht weiter kommt?
    • Ich habe schon gesucht, aber nichts gefunden: Gibt es bei den APIs Unterschiede zwischen V5R3 und V5R4? Hat da evtl. jemand einen Link?
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  4. #4
    Registriert seit
    Jun 2010
    Beiträge
    24
    Danke für eure Ausführungen. Also werde ich weiterhin CL-Befehle benutzen. Nur wo ich detaillierte Informationen benötige (z.B. Drucker ist gestartet, aber an welcher Outq hängt der) sind also APIs eine Sinnvolle Ergänzung, bzw. wo ich Informationen wie Outq-Inhalt benötige dieses über APIs lösen.

    @D*B

    Normale CL-Befehle gehen auch wunderbar direkt über ODBC. Ich habe mir dafür extra eine kleine Routine gestrickt, die diese Befehle in die QCMDEXE einpflanzt und ausführt.
    Schönen Gruß aus Kiel

    Jörg

Similar Threads

  1. Dynamisches SQL in einem CL erstellen
    By Sony in forum IBM i Hauptforum
    Antworten: 27
    Letzter Beitrag: 20-07-09, 21:48
  2. Programmbibliothek in einem Cobol oder CL Programm ermitteln
    By schatte in forum NEWSboard Programmierung
    Antworten: 19
    Letzter Beitrag: 10-01-07, 11:32
  3. "Vary on" in CL
    By RLPforum in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 04-01-07, 14:58
  4. PCL commands für BIZHUB 350
    By RaMai in forum NEWSboard Drucker
    Antworten: 1
    Letzter Beitrag: 08-08-06, 10:13
  5. Übergabeparameter im CL Script
    By bo1 in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 23-06-06, 15:00

Berechtigungen

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