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

Thema: QWM1939 QMQRY

  1. #13
    Registriert seit
    Jun 2001
    Beiträge
    1.975
    Neu anlegen ... Montag
    cpyf ...?
    anschließend kommt noch ein delete von bestimmtem Sätzen.
    da brauch ich SQL sowieso, (daher auch das Pgm)

    Gruß
    Robi

  2. #14
    cbe is offline [professional_User]
    Registriert seit
    May 2005
    Beiträge
    392
    Hallo Robi,

    interessante Art, die QMQRY zu verwenden.
    Ich habe es mal ausprobiert, bei mir geht es auch im Batch.

    Code:
    SBMJOB CMD(STRQMQRY QMQRY(CB2/S01) OUTPUT(*PRINT) SETVAR((S01 'insert into
    cb2/cb_kat select *  from cb2/cb_kat'))) JOBQ(QINTER)
    Ich bekomme zwar interaktiv wie auch im Batch folgende Warnung:
    Code:
    QWM2204    Information             30   28.06.10  09:52:59,745532  QQXSRV01     QSYS        *STMT    QQXSRV01    QS
                                         Ausgangsmodul . . . . . . . :   QQXCPIMESS                                    
                                         Ausgangsprozedur  . . . . . :   QQxCPIMessage__SendMessage                    
                                         Anweisung . . . . . . . . . :   16                                            
                                         Zielmodul . . . . . . . . . :   QQXINTQUER                                    
                                         Zielprozedur  . . . . . . . :   QQxIntQuery__RunSQLStatement                  
                                         Anweisung . . . . . . . . . :   162                                           
                                         Nachricht . . . :   Keine Abfragedaten zu PRINT.                              
                                         Ursache  . . . . :  Der Befehl PRINT REPORT wurde mit einer Anweisung SQL     
                                           SELECT vor der erfolgreichen Beendigung eines Befehls RUN QUERY eingegeben. 
                                           Fehlerbeseitigung:  Einen Befehl RUN QUERY in einer Abfrage eingeben, die   
                                           eine Anweisung SQL SELECT enthält und bei erfolgreicher Beendigung die      
                                           Befehlsanforderung PRINT REPORT wiederholen.
    aber ausgeführt wird der INSERT in beiden Fällen.


    @pikachu: "Aktuell ist doch QWM2010." ROTFL, der war gut!

    Gruß, Christian

  3. #15
    Registriert seit
    Jun 2001
    Beiträge
    1.975
    interessante Art, die QMQRY zu verwenden.
    Hab ich öfter im Einsatz
    (mein längstes QMQRY heist S10 und hat 10 Variable
    &S01 &S02 &S03 ... &S10

    da passt ein 550 Zeichen langes sql rein
    nicht immer besonders schön, aber häufig hilfreich.

    Im Batch hatte ich auch noch nie Probleme.
    k.a. warum Das nicht geht.
    habe ein anderes pgm, das diese Technik verwendet mal als submit übergeben, kein Problem

    echt verrückt

    Gruß
    Robi

  4. #16
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Für solche dynamischen SQL's ist ggf. REXX wesentlich hilfreicher.
    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. #17
    Registriert seit
    Jun 2001
    Beiträge
    1.975
    Kann ich leider nicht.

    Hast du ein 'schreib ab und lerne" Beispiel?

  6. #18
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Gib folgendes in eine SEU-Quelle (QREXXSRC) mit Namen RUNSQLSTM ein:

    parse arg Stmt
    address execsql
    execsql "set option commit=*none"
    execsql Stmt
    exit

    Das ganze startest du per:

    STRREXPRC SRCMBR(RUNSQLSTM)
    SRCFILE(MYSRCLIB/QREXXSRC)
    PARM('insert into myfile select ...')
    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. #19
    Registriert seit
    Jun 2001
    Beiträge
    1.975
    Super, danke

    REXX kennt also keine Feldlängen !?

    und benötigt die Source für die Ausführung.

    Danke, das klingt tatsächlich besser als die blöde Stückelung des SQL in 55 er Variablen

    Ich werde es zukünfig so machen
    Danke
    Robi
    (der sich freut das dieses Thema nur doch etwas gebracht und er etwas gelernt hat)

  8. #20
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    REXX arbeite grundsätzlich mit Strings, das aber sehr komfortabel.

    Achtung:
    In der Routine ist keine Fehlerbehandlung implementiert!
    Probier die Reaktionen bei falschen SQL's mal aus. Im Dialog gibt's dann ggf. eine Bildschirmausgabe die der Bediener bestätigen muss.
    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

  9. #21
    Registriert seit
    Jun 2001
    Beiträge
    1.975
    Ok, Danke

    Werde mal ein wenig damit spielen.
    Und hoffe das ich dadurch ein wenig REXX lerne

    Gruß
    Robi

Similar Threads

  1. QMQRY in CL Programm
    By Hubert in forum IBM i Hauptforum
    Antworten: 12
    Letzter Beitrag: 11-05-05, 13:25
  2. QMQRY LEFT OUTER JOIN
    By Matthias.Hayn in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 06-12-04, 13:33
  3. QMQRY und Primärdatei
    By Matthias.Hayn in forum IBM i Hauptforum
    Antworten: 9
    Letzter Beitrag: 06-12-04, 08:51
  4. Gruppenwechsel und Summensätze in QMQRY?
    By Matthias.Hayn in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 28-07-04, 09:26
  5. QMQRY
    By Atomik in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 21-11-01, 10:45

Berechtigungen

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