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

Hybrid View

  1. #1
    Registriert seit
    Dec 2006
    Beiträge
    4
    Hallo Pikachu

    Vielen Dank. Den INSERT kann ich jetzt verwenden.

    Kannst du mir noch sagen, wie die Syntax im QMQRY für die Variable aussehen soll?

    Mit folgendem Aufruf erhalte ich den Fehler QWM2701:

    CL:
    STRQMQRY QMQRY(BIBLIOTHEK/ABFRAGE) SETVAR((VARIABLE &WERT))

    QMQRY:
    INSERT INTO....
    WHERE DBFELD = &VARIABLE

    Danke und Gruss,

    Sony

  2. #2
    Registriert seit
    Aug 2004
    Beiträge
    923
    Hello,

    hab hier nen Zettel, da steht das so drauf:

    #1) SQL-Source mit SEU erstellen.
    Beispiel:
    PHP-Code:
    insert into....where dbfeld = &var1 
    #2) Die Abfrage mit CRTQMQRY erstellen

    #3) Die Abfrage mit STRQMQRY ausführen.

    k.

  3. #3
    Registriert seit
    Nov 2003
    Beiträge
    2.403
    Wenn &WERT eine Zeichenkette ist, dann musst du diese im CL mit Anführungszeichen umgeben und dann so als Variable übergeben. Z.B. CHGVAR VAR(&WERTS) VALUE('''' *CAT &WERT *TCAT '''') und dann &WERTS anstelle von &WERT als Variable übergeben.

  4. #4
    Registriert seit
    Dec 2006
    Beiträge
    4
    Super hat geklappt!

    Vielen Dank für die Hilfe.

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Es gibt da noch einen kleinen Trick.
    QMQRY interpretiert den SQL erst nachdem die Variablen gefüllt sind.
    Der Inhalt jeder Variable kann bis zu 55 Zeichen lang sein.
    Nun kann man also einfach einen QMQRY erstellen:

    &V1&V2&V3&V4&V5

    Per CLP kann der SQL nun in einer Variablen zusammengebaut werden.
    Per "
    STRQMQRY ... SETVAR((&V1 (%SST(&MYCLVAR 1 55)) (&V2 (%SST(&MYCLVAR 56 55)) ....)
    kann dann jeder beliebige SQL übergeben werden.

    Die QM-Berechtigungsprüfung wird somit umgangen, da diese nur beim QMQRY selber vorgenommen wird.
    Zur Laufzeit geht QMQRY davon aus, dass diese Prüfung bereits erfolgt ist.

    Je nachdem, wie lang der SQL werden kann, soviele Variablen werden benötigt. Aber Achtung: alle Variablen müssen angegeben werden, sie können aber Leerzeichen enthalten.
    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

  6. #6
    Registriert seit
    Mar 2003
    Beiträge
    80
    Ich mach es mit einem Mini RPG-Programm

    C/EXEC SQL
    C+ EXECUTE IMMEDIATE :SqlStmt
    C/END-EXEC

  7. #7
    Registriert seit
    Jun 2006
    Beiträge
    356
    Hallo,

    Ich habe hier ein Savefile mit dem entsprechenden Objekten. Dort enthalten ist das entsprechende Programm, um ein SQL in einem CL auszuführen.
    Das Savefile kann ab V3R2M0 rückgesichert werden. Wer interesse hat, bitte bei mir melden. Eigentlich wollte ich die Datei hier hochladen, aber das hat leider nicht geklappt.

    Viele Grüße und frohe Weihnachten wünscht euch
    Matthias

  8. #8
    Registriert seit
    Jun 2001
    Beiträge
    388
    Hallo Matthias, ich wäre an dem SAVF interessiert. Könntest Du den an herzfeldta@toepfer.com senden ?

    MFG
    Andreas
    Andreas Herzfeldt

  9. #9
    Registriert seit
    Nov 2005
    Beiträge
    35
    Hallo Matthias, ich wäre auch an dem SAVF interessiert. Könntest Du den an mrzik@tddk.de senden ?

    MFG
    mrzik

  10. #10
    Registriert seit
    May 2002
    Beiträge
    60
    Hallo Matthias, kannst Du mir das SAVF auch bitte zuschicken, kalle100@web.de
    Gruß Proggi

  11. #11
    Registriert seit
    Jun 2006
    Beiträge
    356
    Hallo Proggi,

    leider ist deine E-Mail Adresse nicht gültig (RCPT TO <kalle100@web.de> gescheitert: Angeforderte Aktion nicht ausgeführt: Postfach nicht verfügbar).

    Gruß Matthias

  12. #12
    Registriert seit
    Jun 2006
    Beiträge
    356
    Ich habe hier noch ein Programm gefunden, welches anscheind noch ein paar mehr Funktionen hat:

    http://dbg400.net/cgi-bin/twiki/view/DBG400/ExcSql

Similar Threads

  1. dynamisches SQL
    By redsky in forum NEWSboard Programmierung
    Antworten: 0
    Letzter Beitrag: 06-12-05, 11:23
  2. SQL in CL
    By RLPforum in forum IBM i Hauptforum
    Antworten: 8
    Letzter Beitrag: 15-11-05, 12:04
  3. Dynamisches SQL
    By loeweadolf in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 15-11-05, 11:45
  4. Erstellen Trigger über SQL / Read Funktion
    By GHoffmann in forum IBM i Hauptforum
    Antworten: 0
    Letzter Beitrag: 07-07-05, 09:18
  5. SQL in CL einbinden ?
    By Helwo in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 08-08-01, 08:50

Berechtigungen

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