[NEWSboard IBMi Forum]
Seite 1 von 2 1 2 Letzte
  1. #1
    Registriert seit
    Jun 2001
    Beiträge
    1.975

    SQL V5R2->V5R1

    Hi *all,
    Wir haben ein Sql-statement im QM erfasst und das OBJ an den Kunden geschickt (natürlich nach erfolgreichem Test)

    Wir haben V5R2 und das SQL arbeitet mit COALESCE

    Der Kunde hat noch(schon) V5R1

    obwohl unser FTP-Senden das KD-Release bein savlib berücksichtigt konten wir fehlefrei Übertragen.

    Beim Kunden lief 's dann nicht

    Hat einer ne Idee wie ich solchen zeitfressenden Unsinn vorher feststellen kann ? z.b. qsysv5r1m0 vorstellen o.ä.

    Danke
    Robi

  2. #2
    Registriert seit
    Aug 2001
    Beiträge
    2.873

    Coalesce

    Hallo Robi,

    das COALESCE kann eigentlich keine Probleme machen, das läuft auch unter Release V5R1M0.

    Ich habe mehrere QM-Queries, die COALESCE verwenden.

    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

  3. #3
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Das Problem ist ggf. die interne Struktur des QMQRY-Objekts.
    Hier hilft nur folgendes:

    RTVQMQRY -> Quellendatei
    Quellendatei versenden
    CRTQMQRY <- Quellendatei
    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

  4. #4
    Registriert seit
    Jun 2001
    Beiträge
    1.975

    ok, werde es versuchen und berichten

    Danke,
    werde es versuchen und berichten
    Robi

  5. #5
    Registriert seit
    Jun 2001
    Beiträge
    1.975

    geht noch nicht

    Hi ,
    Leider geht es immer noch nicht.

    Hier mal das Statement

    Wie gesagt, bei uns mit 5.2 lauft es

    update &LIB/HJHUP HJH set HJH111 = coalesce(
    (select substr(MN6.N6REF2, 1, 10) from &LIB/VO1H1 VO1
    inner join &LIB/MN6 MN6 on VO1.VO1021 = MN6.N6LOPD
    where HJH.HJH100 = VO1.VO1043 and
    HJH.HJH203 = VO1.VO1052 and
    HJH.HJH033 = VO1.VO1006 and
    MN6.N6phas = '3' and
    VO1.VO1034 = '*' and
    VO1.VO1035 = '*' and
    VO1.VO1023 <> 0), ' ')

    where HJH.HJH015 = 'OBV' and
    HJH.HJH100 = 'V' and
    HJH.HJH203 > 0 and
    HJH.HJH033 <> ' ' and
    HJH.HJH074 not in ('1 ', '2 ', '3 ', '4 ', '5 ', '6 ', '7 ') and
    HJH.HJH111 = ' ' and
    HJH.HJH010 = 2003 and
    HJH.HJH011 >= 09


    Robi

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Vielleicht stellst du ja mal die konkrete Fehlermeldung hier ein.
    Das Rumstochern im Nebel bringt nämlich nichts.

    Kann es sein, dass der Subselect (ab COALESCE) vielleicht mehr als eine Zeile liefert !?
    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
    Jun 2001
    Beiträge
    1.975
    Klaro,
    hier der Aufruf und der Fehler.


    STRQMQRY QMQRY(PP_MATE2/DELTICHJH) SETVAR((LIB AKTEST))

    Token SUBSTR ungültig. Gültige Token: + ) -.
    Befehl RUN für Objekt QUERY mit SQLCODE -104 fehlgeschlagen.
    Befehl RUN QUERY aufgrund eines Fehlers beendet.
    Befehl STRQMQRY fehlgeschlagen.



    Weitere Nachrichteninformationen

    Nachrichten-ID . . . . : SQL0104 Bewertung . . . . . . : 30
    Nachrichtenart . . . . : Diagnose
    Sendedatum . . . . . . : 30.09.03 Sendezeit . . . . . . : 14:28:37

    Nachricht . . . : Token SUBSTR ungültig. Gültige Token: + ) -.
    Ursache . . . . .: Bei Token SUBSTR wurde ein Syntaxfehler entdeckt. Token
    SUBSTR ist kein gültiges Token. + ) - ist eine Teilliste gültiger Token.
    Diese Liste geht davon aus, dass die Anweisung bis zu diesem Token korrekt
    ist. Es kann eine frühere Stelle in der Anweisung fehlerhaft sein, aber bis
    zu dieser Stelle scheint die Syntax gültig zu sein.
    Fehlerbeseitigung: Einen der folgenden Schritte durchführen und die
    Anforderung wiederholen:
    - SQL-Anweisung im Bereich des Token SUBSTR überprüfen. Anweisung
    korrigieren. Der Fehler kann ein fehlendes Komma oder Anführungszeichen
    sein, er kann in einem falsch geschriebenen Wort oder in der Anordnung der
    Klauseln begründet sein.


    (auch die Syntaxprüfung (F15) im QM bringt genau den Fehler

    Danke

    Robi

  8. #8
    Registriert seit
    Sep 2001
    Beiträge
    156
    Hallo
    Wahrscheinlich eine ganz dumme Idee von mir, aber...
    hat's vielleicht mit einem unterschiedlichen Dezimalformat zu tun ??
    Sysval QDECFMT ?
    Gruss
    Rolf

  9. #9
    Registriert seit
    Jun 2001
    Beiträge
    1.975
    hi rolf
    nein, leider nicht
    Robi

  10. #10
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Es hat leider tatsächlich mit V5R1 zu tun:

    Seit V5 gibt es erst die Möglichkeit einen Subselect im Ausdruck auszuführen (Select f1, f2, select x from f as f3, ...).
    Leider gibt es bei integrierten Funktionen erst ab V5R2 die Möglichkeit eines Subselect.

    Tut mir Leid für dich, du must dir eine andere Lösung ausdenken.
    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 2001
    Beiträge
    1.975
    Hallo Ihr Helfer und Tippgeber,
    danke für die Analysen und die Bestätigung meiner Annahme, das es an V5R1 liegt.

    Bleibt die Frage ob ich meine SQL's in V5R2 für V5R1 validieren kann ?

    Das QM Objekt wurde anstandslos für V5R1 gesichert.

    Anschl. habe wir dem Kunden erzählt das wir sein Problem beheben können. Nun mußte ich ihm sagen : Irrtum vom Amt, geht leider nicht (zu dem Aufwand). sowas ist Peinlich
    Danke
    Robi

  12. #12
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Leider gibt es keine Möglichkeit SQL für V5R1 zu validieren.
    Die Speicherung von *QMQRY für V5R1 betrifft nur die Objektart und nicht den Inhalt.

    Den Inhalt kann man sich per DMPSYSOBJ anschauen und sieht dann, dass ausschließlich Textinformationen im Objekt gespeichert sind.
    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. RPGLE - SQL
    By christian_lettner in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 16-11-06, 10:15
  2. SQL - Cursor vernichten ?!?
    By FNeurieser in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 11-10-06, 14:53
  3. SQL und OBJLCK
    By malzusrex in forum IBM i Hauptforum
    Antworten: 8
    Letzter Beitrag: 19-09-06, 11:04
  4. SQL - Fehler
    By Kaufmann in forum IBM i Hauptforum
    Antworten: 11
    Letzter Beitrag: 28-06-06, 14:11
  5. SQL .. for update of (RPG embedded SQL)
    By loeweadolf in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 01-06-06, 09:43

Berechtigungen

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