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

Thema: SQL XML

  1. #1
    Registriert seit
    Jan 2001
    Beiträge
    833

    SQL XML

    Hallo zusammen,

    ich möchte mit SQL XML Daten erzeugen und diese
    als XML auf dem IFS ablegen.

    Folgendes SQL zeigt die Daten OpsNav
    PHP-Code:
    SELECT  
            XMLSERIALIZE
    (
            
    XMLELEMENT NAME "kunde",   XMLATTRIBUTESk.kdnnr as "Kundennr")  ,
        
    XMLFOREST (     trim(k.kdnam) as "NAME" ,
            
    trim(k.kdort) as "Ort",
            
    trim(k.kdplz) as "PLZ"
                        
    ) )
                    
         AS 
    CLOB(1M)  INCLUDING
        XMLDECLARATION
    )  AS XML_Kunden_Daten

          FROM kdstap 
    as k
    Weiß jemand wie ich daraus eine lesbare IFS Datei erzeugen kann ?
    Die XML Daten sollen später an eine andere Applikation übergeben werden.

    Gruß
    Michael

  2. #2
    Registriert seit
    Jun 2001
    Beiträge
    1.975
    wir schreiben mit SQL so:
    Code:
    C/EXEC SQL   SET OPTION  COMMIT=*NONE, DATFMT=*ISO, TIMFMT=*ISO, 
    C+                       NAMING=*SYS,  CLOSQLCSR=*ENDACTGRP      
    C/END-EXEC                                                       
     /FREE                                                           
        CLEAR MYXMLDOC;                                              
        MYXMLDOC_NAME = '/HOME/RJ/MYXMLDOC.XML';                     
        MYXMLDOC_NL   = %LEN(%TRIM(MYXMLDOC_NAME));                  
        MYXMLDOC_FO   = SQFOVR;       //REPLACE IF EXISTS            
                                                                     
        EXEC SQL                                                     
            SELECT XMLDOCUMENT                                       
                     (XMLGROUP(ADR006 AS "D_C",                      
                               ADR007 AS "NUMMER",                   
                               ADR009 AS "INTERN-NAME",              
                               ADR018 AS "STREET",                   
                               ADR015 AS "ZIPCODE",                  
                               ADR020 AS "CITY"                      
                               ORDER BY ADR015 DESC, ADR009          
                               OPTION ROW "KUNDEN"  
                                   ROOT "ADRESSEN"))         
                  INTO :MYXMLDOC                             
                  FROM ADRM1;                                
                                                             
          *INLR       = *ON;                                 
         /END-FREE
    vielleicht hilft dir das ja

    Robi
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  3. #3
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Wo und wie ist denn MYXMLDOC definiert und wie passiert dann der Export ins IFS?
    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
    Guten morgen Baldur!
    Wo und wie ist denn MYXMLDOC definiert
    MYXMLDOC_NAME = '/HOME/RJ/MYXMLDOC.XML';
    und wie passiert dann der Export ins IFS?
    MYXMLDOC_NAME = '/HOME/RJ/MYXMLDOC.XML';

    Den Rest macht OS/400!

    Das Pgm ist recht klein, schreib es ab, es funktioniert!

    Robi
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  5. #5
    Registriert seit
    Jun 2001
    Beiträge
    1.975
    Wir machen das nur für einfache xml
    Warscheinlich sind auch etwas komplexere Strukturen möglich, aber da fehlt uns die Übersicht.
    Daher machen wir dann die hier angerissene Methode.
    Robi
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Tut mir Leid, der SQL-Precompiler meldet:
    MYXMLDOC nicht definiert oder nicht verwendbar.

    Mir ist auch unbekannt, dass Variablen neuerdings nicht definiert werden müssen.
    Vielleicht werden wir beider ja schlauer, wenn man mal das Compiler-Listing sieht.
    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
    Ok, sorry,
    hab meins grade noch mal gewandelt.
    0 fehler
    es ist o.g. source als sqlrpgle, mit 14 für v7r1 gewandelt (geht auch früher, k.a. welches release wir damals hatten)
    Generierungsbewertungsstufe . . : 10
    Standardaktivierungsgruppe . . . : *YES
    Umwandlungsprogrammauswahlmögl. : *XREF *GEN *NOSECLVL *SHOWCPY
    *EXPDDS *EXT *NOSHOWSKP *NOSRCSTMT
    *DEBUGIO *UNREF *NOEVENTF
    Testhilfesichten . . . . . . . . : *ALL
    der precompler meldet quasi nur die source nochmal,

    Habe aber (seit einem SQL Fehler, auf Empfehlung von Andreaspr@aon.at) rpgppopt *LVL2
    im cmddft

    versuch das mal
    Robi
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  8. #8
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Dies macht keinen Unterschied, da ja keine Copies vorhanden sind.
    Der Fehler ist derselbe.

    Ich habe mir alle Beispiele im SQL-Programmierhandbuch V7R1 angesehen, mit IFS-Ausgabe ist da nichts und beim "Select .. into " muss eine Hostvariable angegeben werden.

    Also irgendwo wird da bei euch was gezaubert.
    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. #9
    Registriert seit
    Jun 2001
    Beiträge
    1.975
    Zaubern kann ich (leider) nicht!
    Was soll ich machen?
    Montag mal ne PC-Visit Sitzung? (meine Kiste fährt grade runter)
    Ich kann dir das gerne zeigen.
    Und da ich auf die schnelle mit 14 gewandelt habe, greift auch nicht unsere recht komplexe UW-Automatik
    schönes WE
    Montag?
    Gruß
    Robi
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  10. #10
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Ich denke, da fehlen ein paar OS-Optionen bei der Installation des OS/400, ich werde mal nachfragen ob die noch installiert werden können.
    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
    Mar 2002
    Beiträge
    5.287
    ... ich tippe mal, dass die vermeintliche Source nicht die Quelle des vorhandenen Programmes ist. Falls der Pre Compiler das durchlassen würde, hätte der Compiler beim clear MYXMLDOC die nächsten Einwände anzumelden...

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

  12. #12
    Registriert seit
    Jun 2001
    Beiträge
    1.975
    Da tippst du falsch!
    die 14 nimmt normal die Quelle vor der sie gemacht wird.
    das myxmldoc ist ne DS
    (Sitze am handy, mei e kiste ist aus)
    Hast du es probiert?
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

Berechtigungen

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