[NEWSboard IBMi Forum]

Thema: SQL + RPG

Hybrid View

  1. #1
    Registriert seit
    Apr 2002
    Beiträge
    24

    Post SQL + RPG

    Hallo *all.

    Ich möchte zwei gleiartige Dateien in RPG mit SQL verarbeiten. Sie haben beiden einen identischen Satzaufbau, allerdings sind die Feldnamen unterschiedlich.

    Zum Verknüpfen beider Dateien habe ich die UNION-Anweisung benutzt. In der ORDER BY Anweisung habe ich einige Felder der Zweitdatei angegeben. Das funktioniert unter V4R4 auch wunderbar.

    Unter V5Rx läuft das nicht. Es wird immer der Fehler, Die Felder aus der "Order By"-Anweisung sind in der Ergebnistabelle nicht vorhanden, im Joblog ausgegeben und keine Sätze ausgewählt.

    Leider habe ich nicht allzuviel SQL-Erfahrung, was mache ich falsch? Für jeden Tipp bin ich dankbar

    Gruß Holli

  2. #2
    Registriert seit
    Mar 2002
    Beiträge
    5.365

    Post

    Hallo,

    was das SQL angeht weiss ich noch nicht, was das Fragen angeht: vergessen die SQL Anweisung hinzuschreiben. Wenn letzteres behoben ist, sollte ersteres zu schaffen sein.

    Dieter
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  3. #3
    Registriert seit
    Apr 2002
    Beiträge
    24

    Post

    Hallo, hier die SQL-Anweisungen:

    *
    C/EXEC SQL
    C+ DECLARE SQL#### SCROLL CURSOR FOR SELECT * FROM DRPAP WHERE
    C+ RPAKONZERN between :RTNKONZVON and :RTNKONZBIS UNION ALL SELECT *
    C+ FROM DREPP WHERE REPKONZERN between :RTNKONZVON and :RTNKONZBIS
    C+ ORDER BY REPBUSCHL, REPBUCHART
    C/END-EXEC

  4. #4
    Registriert seit
    Mar 2002
    Beiträge
    5.365

    Post

    Hi,

    hmhh, select * lässt natürlich nicht erkennen, wie die Felder heissen.
    Sieht aber so aus, dass die ORDER BY Felder eher in der zweiten Datei stecken, das kann auf keinen Fall gehen, wenn ich das richtig in Erinnerung habe, werden die Feldnamen von der ersten gezogen. (kann eigentlich auch unter V4 nicht gegangen sein).
    am klarsten ist es die Felder alle zu benamen, damit sie in der Ergebnismenge benamt sind. Also:
    SELECT RTUMS as UMSATZ ...
    FROM
    WHERE
    UNION
    SELECT REUMS as UMSATZ ...
    FROM
    WHERE
    ORDER BY UMSATZ

    dies ist nur schematisch.

    Dieter

    PS: ohne Group PTF für die Datenbank kann alles kaputt sein, CumCD reicht nicht aus.
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  5. #5
    Registriert seit
    Jan 2001
    Beiträge
    340

    Post

    SQL sieht für solche älle eine einfache Lösung vor : order by 1, 2, 3. Es reicht, die Nummer der Spalte anzugeben.

    Gruß Rolf

  6. #6
    Registriert seit
    Apr 2002
    Beiträge
    24

    Talking

    @BenderD
    Das funktioniert unter V4Rx definitiv.

    Vielen Dank für deinen Tipp. Mit der Umbenennung klappt es wunderbar.

    @Rmittag
    Vielen Dank. Das hab ich noch nie irgendwo gesehen oder gelesen, klappt bestens.

Similar Threads

  1. ILE RPG / SQL Füllen einer Feldgruppe
    By homue in forum NEWSboard Programmierung
    Antworten: 5
    Letzter Beitrag: 18-07-07, 16:47
  2. embedded SQL in RPG
    By muadeep in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 03-08-06, 13:25
  3. RPG mit Embedded SQL, JOIN ..
    By loeweadolf in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 18-06-06, 12:14
  4. SQL .. for update of (RPG embedded SQL)
    By loeweadolf in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 01-06-06, 09:43
  5. embedded SQL in ILE RPG, UPDATE
    By Zupfl50 in forum NEWSboard Programmierung
    Antworten: 8
    Letzter Beitrag: 06-10-04, 21:04

Berechtigungen

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