[NEWSboard IBMi Forum]
Seite 1 von 3 1 2 ... Letzte

Thema: SQL und CLLE

  1. #1
    Registriert seit
    Jan 2007
    Beiträge
    904

    SQL und CLLE

    Frage an die SQL Nerds

    Kann ich in einem CLLE mit SQL auch folgendes (analog fetch) machen:

    Ich lese ein File mit einem "like value" z.B. alle Kunden die mit Kd-Nr. 1 beginnen
    und starte eine Anwendung mit Parameter ganze Kundennummer, bis kein Record mit 1% gefunden wird.

    ... oder soll ich dafür ein kleines RPG Programm bemühen?

    Danke für die Hilfe
    kf

  2. #2
    Registriert seit
    Jun 2001
    Beiträge
    1.973
    sql?

    opnqryf + ovrdbf mit rcvf gehen dafür
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  3. #3
    Registriert seit
    Aug 2001
    Beiträge
    2.869
    Du erstellst ganz einfach in deinem CLLE eine View basierend auf dem kompletten SELECT-Statement (geht mit RUNSQL) und liest dann durch diese View, wie durch eine ganz normale Datei (DCLF ... RCVF) .

    Du musst die View lediglich zur Compile-Zeit definiert haben, damit du sie mit DCLF registrieren kannst.

    Birgitta
    Birgitta Hauser

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

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Da CLP für Select-SQL's weniger geignet ist und du RPGLE kannst, bist du wesentlich flexibler, wenn du RPGLE nimmst. Dann kannst du deine Whereklausel auch parametrieren.
    Ein CLP liest von Anfang bis Ende. Du müsstest also on the fly in der QTEMP die View immer erst neu erstellen.
    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
    Jun 2001
    Beiträge
    1.973
    Ein CLP liest von Anfang bis Ende.
    Deswegen ja der OPNQRYF! Damit geht ne Menge!
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  6. #6
    Registriert seit
    Jan 2007
    Beiträge
    904
    Danke für die Antworten.

    @Robi: Der opnqryf erinnert mich doch zu sehr an AS400. ;-)
    @Birgitta: Die Lösung mit der View hätte mich überzeugt, bis ich auf wechselnde where Konditionen gestossen bin. Da hätte ich die View - innerhalb einer CLLE - immer wieder neu erstellen müssen.

    Deshalb folge ich auch Baldurs Vorschlag, bzw. hab das SQLRPGLE schon praktisch fertig.
    kf

  7. #7
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Ich war schon immer der Meinung, für gestellte Aufgaben die beste Alternative zu wählen.
    Bei SQL-Selects ist es eher eben RPGLE als CLLE.
    Für andere SQL's kannst du nun gerne auch RUNSQL statt RUNSQLSTM verwenden, da du da eben auch Parameter haben kannst.
    Und OPNQRYF ist ja wirklich eher V3 als V7.
    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
    Aug 2001
    Beiträge
    2.869
    Zitat Zitat von camouflage Beitrag anzeigen
    Danke für die Antworten.
    @Birgitta: Die Lösung mit der View hätte mich überzeugt, bis ich auf wechselnde where Konditionen gestossen bin. Da hätte ich die View - innerhalb einer CLLE - immer wieder neu erstellen müssen.
    ... und wo liegt das Problem? Eine View ist lediglich ein gesichertes SELECT Statement und in CLLE kannst Du eine Datei auch mehrfach lesen.
    Birgitta Hauser

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

  9. #9
    Registriert seit
    Jan 2007
    Beiträge
    904
    Birgitta,

    wenn sich innerhalb des Selects ein "where" Wert ändert, muss ich die View neu erstellen. Das ist der Punkt, der mir nicht so gefällt.
    kf

  10. #10
    Registriert seit
    Aug 2001
    Beiträge
    2.869
    Dann solltest Du wohl doch ein RPG-Programm schreiben!
    Birgitta Hauser

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

  11. #11
    Registriert seit
    Jan 2003
    Beiträge
    746
    Falls das jemand nachmachen möchte: ich schreibe gar keine CLLE's mehr, mache alles in Free mit QCMDEXC - die Anweisungen Monitor und Commit sind in diesem Kontext unschlagbar!

  12. #12
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Nun ja, wenn ich im CLP/CLLE mit Commands umgehe erleichtert das das Schreiben schon.
    Aber jedem das Seine.
    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. Antworten: 5
    Letzter Beitrag: 31-08-17, 13:50
  2. clle TYPE(*LGL)
    By dibe in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 18-09-15, 10:55
  3. CLLE als Prozedur ins Serviceprogramm
    By Etherion in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 30-09-14, 14:36
  4. ILE RPG + CLLE
    By Ludger Muhmann in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 07-10-02, 15:06

Berechtigungen

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