[NEWSboard IBMi Forum]
Seite 1 von 2 1 2 Letzte
  1. #1
    Registriert seit
    Sep 2005
    Beiträge
    51

    Unhappy Problem mit QM-Aufruf

    hallo.


    ich rufe im PGM ein Query auf und kriege folgenden Fehler:

    13000 - STRQMQRY QMQRY(QGPL/SAVPRTFSL) SETVAR((FIELDS1 'NAME, OUTQ,
    LAENGE, BREITE, OVRFL, CPI, LPI, DREHUNG') (FIELDS2 'HOLD, SAVE, TEXT')
    (NAME 'QDFUPRT') (OUTQ '*JOB') (LAENGE ' 72') (BREITE ' 132')
    (OVRFL ' 66') (CPI '10') (LPI '6') (DREHUNG '*AUTO') (HOLD '*NO') (SAVE
    '*NO') (TEXT 'DFU PRINT FILE'))
    Token * ungültig. Gültige Token: ( + - ? : DAY RRN CASE CAST CHAR DAYS
    HOUR LEFT NULL TRIM USER.
    Befehl RUN für Objekt QUERY mit SQLCODE -104 fehlgeschlagen.
    Befehl RUN QUERY aufgrund eines Fehlers beendet.


    wo ist da der TOKEN * denn drinne?? ist doch nirgendsdabei ????

    hier noch der sql-code:

    INSERT INTO GOLZ/SAVPRTF (&FIELDS1, &FIELDS2) VALUES(&NAME, &OUTQ, &LAENGE ,
    &BREITE , &OVRFL , &LPI , &CPI , &DREHUNG, &HOLD, &SAVE, &TEXT)


    entweder bin ich zu blöd oder

  2. #2
    Registriert seit
    Nov 2003
    Beiträge
    2.309
    Hallo!
    Zitat Zitat von apparat
    wo ist da der TOKEN * denn drinne?? ist doch nirgendsdabei ????
    Doch, ist dabei. Zum Beispiel beim Parameter OUTQ. Da du im SQL Zeichenketten verwendest, die in Hochkommas angegeben werden müssen, musst du diese Hochkommas selbst auch mitgeben, z.B. so: (NAME '''QDFUPRT''') (OUTQ '''*JOB''') ... D.h. dein SQL muss mitsamt deinen übergebenen Zeichenketten eine korrekte SQL-Anweisung ergeben. Die einfachen im STRQMQRY die Parameterwerte umschließenden Hochkommas sind selbst nicht Teil dieser Parameterwerte und werden nicht mit übergeben!

    Viele Grüße
    Jürgen

  3. #3
    Registriert seit
    Sep 2005
    Beiträge
    51
    naja wenn ich mit setvar übergebe geht das nicht. ich müsste praktisch die variablen erweitern und die hochkommas in die variable schreiben. aber das ist dann eine menge arbeit jedesmal mit *cat

    naja wird schon gehen, aber den gleichen gedanken wie du hatte ich auch wie du

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.256
    Mit SETVAR gehts auch:

    SETVAR((VAR1 ('''' *CAT &MYVAR *CAT '''')) (VAR2 ....)

    Etwas Tipparbeit, aber ob du die Variablen vergrößerst (problem ggf. bei Verwendung als CALL-Parameter) oder dies im SETVAR machst bleibt dir überlassen, aber machen musst du es.
    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
    Sep 2005
    Beiträge
    51
    irgendwie kommt jetzt hier mein nächster fehler

    13300 - STRQMQRY QMQRY(QGPL/SAVPRTFSL) SETVAR((FIELDS1 '"NAME", "OUTQ",
    "LAENGE", "BREITE","') (FIELDS2 '"OVRFL", "CPI", "LPI", "DREHUNG""')
    (NAME '"QDFUPRT"') (OUTQ '"*JOB"') (LAENGE '" 72"') (BREITE '"
    132"') (OVRFL '" 66"') (CPI '"10"') (LPI '"6"') (DREHUNG '"*AUTO"')
    (HOLD '"*NO"') (SAVE '"*NO"') (TEXT '"DFU PRINT FILE"') (FIELDS3
    '"HOLD", "SAVE", "TEXT""'))
    Token OVRFL ungültig. Gültige Token: ) ,.
    Befehl RUN für Objekt QUERY mit SQLCODE -104 fehlgeschlagen.

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.256
    Dazu müsste man jetzt den verwendeten SQL des QM's mal sehen.
    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
    Nov 2003
    Beiträge
    2.309
    Hallo!

    Die Felder in FIELDS1 und FIELDS2 solltest du weiterhin wie bisher ohne zusätzliche Hochkommas übergeben, da sie im SQL ohne Hochkommas stehen sollten. (Abgesehen davon wäre bei FIELDS1 und FIELDS2 ganz am Schluss jeweils das letzte doppelte Hochkomma zuviel.)

    Bei FIELDS1 ist das letzte Komma zuviel, da das an dieser Stelle benötigte Komma bereits im SQL steht.

    Bei FIELDS3 ist das letzte doppelte Hochkomma zuviel!

    Viele Grüße
    Jürgen

  8. #8
    Registriert seit
    Sep 2005
    Beiträge
    51
    ich habs nochmal umgebaut hier die neue lösung: habe jetzt mal die spalten fest angegeben und natürlich wierder nen anderen fehler. ich meld mich gleich wieder und poste alles rein

  9. #9
    Registriert seit
    Sep 2005
    Beiträge
    51
    bin leider noch nicht dazu gekommen es auszuprobieren. habe eine andere aufgabe vom chef bekommen. vielleicht morgen dann ....

  10. #10
    Registriert seit
    Sep 2005
    Beiträge
    51
    könntent ihr mir ein ganz simples sql schreiben bzw sagen wo jetzt was hin muss? hier mal mein versuch:

    DCL VAR(&PROBE) TYPE(*CHAR) LEN(4) VALUE('test')
    /* ------------------------------------------ */
    STRQMQRY QMQRY(GOLZ/SAVPRTFSL3) SETVAR((NAME2 +
    (&PROBE)))


    und mein SQL sieht so aus:


    INSERT INTO GOLZ/SAVPRTF ("NAME") VALUES(&NAME2)




    achja wenn ihr Anführungszeichen statt Hockkommas nehmt sagt es mal bitte auch. die kann man nicht unterscheiden hier.

  11. #11
    Registriert seit
    Feb 2001
    Beiträge
    20.256
    SETVAR((NAME2 ('''' *CAT &NAME2 *CAT '''')))

    Es sind also 4 Hochkomma vor und hinter den Inhalt zu setzen.
    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

  12. #12
    Registriert seit
    Sep 2005
    Beiträge
    51
    wenn ich genau das eintippe bringt er mir den fehler das diese zeichenfolge ungültig ist. mit 3 geht es aber mit 4 nicht komischerweise

Similar Threads

  1. Problem mit Java-Methoden Aufruf aus ILE RPG?
    By Stoeberl in forum NEWSboard Programmierung
    Antworten: 8
    Letzter Beitrag: 10-01-07, 10:58
  2. Authorization Problem nach ändern der Primary Group
    By ChrisX in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 11-10-06, 15:31
  3. Merkwürdiges Problem in VRPG
    By Flappes in forum IBM i Hauptforum
    Antworten: 0
    Letzter Beitrag: 06-10-06, 08:39
  4. STRQSH Aufruf als Job dauerhaft laufen lassen
    By QSECOFR-1 in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 14-06-06, 18:02
  5. Problem im QM mit Decimal
    By Marc_w in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 31-10-05, 07:24

Berechtigungen

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