[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jun 2015
    Beiträge
    334

    XML-Datei einlesen

    Hallo Forum,
    wie lese ich u.a. HTML-File (Beispiel für einen Artikelstamm ohne Mehrfachsätze) mit dem Befehl XML-INTO ein ? Für Hilfe wäre ich dankbar.











    <?xml version="1.0" encoding="UTF-8"?>

    <SHARK-ERP><Article><ArticleNumber>4711</ArticleNumber><Owner/><AlternativeArticleNumber>4711_1</AlternativeArticleNumber><EAN>1111111111111</EAN><Description>Kölner Wasser</Description><Description1>Echt kölnisch Wasser</Description1><Description2>Wasser aus Köln 250ml</Description2><Unit>Stück</Unit><BatchNumberRequired>0</BatchNumberRequired><SerialNumberRequired>0</SerialNumberRequired><Packages><Package><Replenishments><Replenishment><Zone>A</Zone><LocationStrategy>Floating</LocationStrategy></Replenishment></Replenishments><LocationTypes><LocationType><Name>LMB_821_4/7</Name><Qty>50</Qty></LocationType><LocationType><Name>LMB_821_7/7</Name><Qty>90</Qty></LocationType></LocationTypes></Package></Packages><Misc1/><Misc2/><Misc3/><Misc4/><Misc5/></Article>

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Schau dir die Strukturen genau mittels XML-Editor an (z.B. XML-Notepad).
    Anschließend baust du eine entsprechende hierarchische DS auf.
    Beim Einlesen gibst du entsprechende Optionen für: ignorieren fehlende Knoten, übersetzen ungültige Zeichen, ignorieren GroßKlein an.

    Hier findest du eine Diskussion dazu:
    http://newsolutions.de/forum-systemi...518-XML-Parser
    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
    Aug 2014
    Beiträge
    179
    Hi Alex,
    anbei die Lösung für die Aufgabe

    Code:
             ctl-opt main(main) dftactgrp(*no) option(*nounref);
          //------------------------------------------------------------------//
          //                                                                  //
          // Test - Parse XML - Alex                                          //
          //                                                                  //
          //-----------------                                                 //
          // R.Ross 08.2019 *                                                 //
          //------------------------------------------------------------------//
          // Array XML-File                                                   //
          // Das Root-Element SHARK-ERP wird mit Rsp = Response überschrieben //
          // path=SHARK-ERP                                                   //
          //------------------------------------------------------------------//
    
             dcl-ds Rsp      qualified inz;
              dcl-ds Article;
                      ArticleNumber              char(10);
                      AlternativeArticleNumber   char(10);
                      EAN                        char(13);
                      Description                char(30);
                      Description1               char(30);
                      Description2               char(30);
                      Unit                       char(30);
                      BatchNumberRequired        char(30);
                      SerialNumberRequired       char(30);
                dcl-ds Packages;
                 dcl-ds Package;
                  dcl-ds Replenishments;
                   dcl-ds Replenishment;
                           Zone                  char(10);
                           LocationStrategy      char(10);
                   end-ds;
                  end-ds;
                  dcl-ds LocationTypes dim(10);
                   dcl-ds LocationType;
                           Name                  char(30);
                           Qty                   char(10);
                   end-ds;
                  end-ds;
                 end-ds;
                end-ds;
    
              end-ds;
             end-ds;
    
          //------------------------------------------------------------------//
          // Main                                                             //
          //------------------------------------------------------------------//
             dcl-proc main;
    
             dcl-s   LocOpt      varchar(256);
             dcl-s   LocFile     varchar(256);
    
               Locfile = '/home/import/xml/NewSolutions01.xml';
    
               LocOpt  = 'doc=file +
                          path=SHARK-ERP +
                          case=any +
                          allowextra=yes +
                          allowmissing=yes';              // XML-Options
    
               xml-into rsp %xml(LocFile:LocOpt);
    
             end-proc;
          //------------------------------------------------------------------//
    Herzliche Grüße
    Rainer

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Ich hätte da noch den Counter für die DIM's mit aufgenommen;-).
    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
    Aug 2014
    Beiträge
    179
    Jetzt mit Counter

    Code:
             ctl-opt main(main) dftactgrp(*no) option(*nounref);
          //------------------------------------------------------------------//
          //                                                                  //
          // Test - Parse XML - Alex                                          //
          //                                                                  //
          //-----------------                                                 //
          // R.Ross 08.2019 *                                                 //
          //------------------------------------------------------------------//
          // Array XML-File                                                   //
          // Das Root-Element SHARK-ERP wird mit Rsp = Response überschrieben //
          // path=SHARK-ERP                                                   //
          //------------------------------------------------------------------//
    
             dcl-ds Rsp      qualified inz;
              dcl-ds Article;
                      ArticleNumber              char(10);
                      AlternativeArticleNumber   char(10);
                      EAN                        char(13);
                      Description                char(30);
                      Description1               char(30);
                      Description2               char(30);
                      Unit                       char(30);
                      BatchNumberRequired        char(30);
                      SerialNumberRequired       char(30);
                dcl-ds Packages;
                 dcl-ds Package;
                  dcl-ds Replenishments;
                          cnt_Replenishment      uns(10);
                   dcl-ds Replenishment          dim(05);
                           Zone                  char(10);
                           LocationStrategy      char(10);
                   end-ds;
                  end-ds;
                  dcl-ds LocationTypes;
                          cnt_LocationType       uns(10);
                   dcl-ds LocationType           dim(05);
                           Name                  char(30);
                           Qty                   char(10);
                   end-ds;
                  end-ds;
                 end-ds;
                end-ds;
    
              end-ds;
             end-ds;
    
          //------------------------------------------------------------------//
          // Main                                                             //
          //------------------------------------------------------------------//
             dcl-proc main;
    
             dcl-s   LocOpt      varchar(256);
             dcl-s   LocFile     varchar(256);
    
               Locfile = '/home/import/xml/NewSolutions01.xml';
    
               LocOpt  = 'doc=file +
                          path=SHARK-ERP +
                          countprefix=cnt_ +
                          case=any +
                          allowextra=yes +
                          allowmissing=yes';              // XML-Options
    
               xml-into rsp %xml(LocFile:LocOpt);
    
             end-proc;
          //------------------------------------------------------------------//

Similar Threads

  1. Rollenbandwaage per RS232, Daten in AS/400 einlesen
    By HBGC in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 28-02-18, 17:32
  2. CSV in Teildatei einlesen - RPG
    By _MG_ in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 12-01-17, 09:16
  3. BRMS Bandinhalt neu in Datenbank einlesen
    By hteufl in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 09-10-16, 13:36
  4. XML-Einlesen
    By tarkusch in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 12-04-14, 18:29
  5. Einlesen Dateien vom IFS/root
    By elmar in forum NEWSboard Server Software
    Antworten: 1
    Letzter Beitrag: 19-05-03, 10:12

Berechtigungen

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