[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jan 2014
    Beiträge
    2

    XML-Daten mit "&" in RPG-Datenbank übertragen

    Guten Morgen allerseits!

    Ich soll von der UN-Terrorliste (http://www.un.org/sc/committees/1267/AQList.xml) bestimmte Daten in eine RPG-Datenbank übertragen, dabei gibt es nur ein Problem:

    Die XML-Datei enthält keine &amps , sondern "&".

    Ich habe die Übertragung mit xml-into gemacht, klappt soweit auch alles.
    Nun gibt es beim Lesen des 1. Satzes, der ein solches Zeichen erhält, ein Problem:

    Alle Felder sind leer, mein Programm springt aus der Routine.
    Nachdem ich aber die "&" durch &amps ersetzt habe, klappt das Programm tadellos.

    Nun habe ich versucht, das ganze mit z.B. Übertragen per xml-sax, ccsid ändern etc. , aber ohne Erfolg.

    Da ich zur Zeit keine Idee mehr habe, wende ich mich in meiner Not an euch!

    Im Anhang noch mein Programmcode, der Übersicht halber werden in dem Programm nur die Personen gespeichert. Es wird außerdem der Name statt der ID geprüft, weil die ID numerisch und beim fehlerhaften Satz ("blank") direkt nen Absturz verursacht.

    Code:
         H DFTACTGRP(*NO)
         FTRR01PF   UF A E             DISK
    
    
    
         D INDIVIDUAL      DS                  QUALIFIED
         D                                     dim(1000)
         D
         D   dataid                       8  0
         D   first_name                  34
         D   second_name                 34
         D   third_name                  34
         D   last_day_updated...
         D                                     LIKEDS(UpdateDS)
         D   individual_address...
         D                                     LIKEDS(AdresseDS)
         D*
         D UpdateDS        DS                  QUALIFIED
         D   value                       20A
         D*
         D AdresseDS       DS                  QUALIFIED
         D   street                      34A
         D   city                        25A
         D   country                     25A
         D*
         D x               s             10i 0
         D xmlfile         s           1000a   varying
         D options         s            100a   varying
    
          /free
    
             // CHANGE THIS:
             xmlfile = '/ogsid/bernardy/Test.xml';
    
             options = 'doc=file +
                        path=CONSOLIDATED_LIST/INDIVIDUALS/INDIVIDUAL +
                        case=any +
                        allowextra=yes +
                        allowmissing=yes';
    
             xml-into(e) INDIVIDUAL %xml((xmlfile): options);
    
             x=1;
    
                  dow  INDIVIDUAL(x).FIRST_NAME <> *blanks or
                       INDIVIDUAL(x).SECOND_NAME <> *blanks or
                       INDIVIDUAL(x).THIRD_NAME <> *blanks;
    
                TRGRP = 'P';
                TRID  = INDIVIDUAL(x).DATAID;
                TRNM1 = INDIVIDUAL(x).FIRST_NAME;
                TRNM2 = INDIVIDUAL(x).SECOND_NAME;
                TRNM3 = INDIVIDUAL(x).THIRD_NAME;
                TRUPD = INDIVIDUAL(x).LAST_DAY_UPDATED.VALUE;
                TRSTR = INDIVIDUAL(x).INDIVIDUAL_ADDRESS.STREET;
                TRORT = INDIVIDUAL(x).INDIVIDUAL_ADDRESS.CITY;
                TRLND = INDIVIDUAL(x).INDIVIDUAL_ADDRESS.COUNTRY;
                write(e) RTRR01PF;
                  x = x + 1;
    
                  enddo;
    
             *inlr=*on;
    
          /end-free

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Leider ist der Unterschied des "&"-Zeichens verloren gegangen.
    Es ist häufiger der Fall, dass bestimmte Sonderzeichen, die XML-Spezifisch sind, als HTML-/Unicode-Ersatzzeichen eingebettet werden.
    Die meisten XML-Reader können das auch verarbeiten.

    Was fehlerhafte Daten angeht, so hilft halt nur alle Felder als Char definieren und benötigte Umwandlungen in einer Monitor-Group selber machen.
    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

  3. #3
    Registriert seit
    Jan 2014
    Beiträge
    2
    Erstmal danke für die schnelle Antwort:

    Leider ist der Unterschied des "&"-Zeichens verloren gegangen.
    Habe ich selber eben gemerkt und im Beitrag behoben.

    Was fehlerhafte Daten angeht, so hilft halt nur alle Felder als Char definieren und benötigte Umwandlungen in einer Monitor-Group selber machen.
    Dacht ich mir schon, hatte nur gehofft, dass irgendwie innerhalb von RPG abwickeln zu können, trotzdem danke!!

Similar Threads

  1. Daten exportieren "AS/400 NOOB"
    By RobinHood2001 in forum IBM i Hauptforum
    Antworten: 8
    Letzter Beitrag: 12-12-13, 12:30
  2. "must-have" Infoseite?
    By CaddyMajor in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 19-11-13, 11:04
  3. Wie Datei von 5.1 auf 3.7 übertragen?
    By hs in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 18-11-02, 14:44
  4. IFS-Dateien per FTP übertragen
    By mott in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 20-06-02, 10:24
  5. Antworten: 3
    Letzter Beitrag: 25-02-02, 22:27

Berechtigungen

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