-
OK, trotzdem vielen Dank. Ich mach mich weiter auf die Suche nach einer Lösung, die ich, falls gewünscht, hier präsentieren werde.
-
Eine Präsentation der Lösung ist immer willkommen, schließlich wird im Forum ja erst nach Antworten gesucht, bevor man eine eigene Frage stellt
-
Hi,
hier die Lösung bzw. der Weg den ich gegangen bin.
Für Rückfragen stehe ich gerne zur Verfügung.
------------------------------------------------------------------------
Das ist das empfangene XML-Document.
XML-File:
<?xml version="1.0" encoding="UTF-8"?>
<neuePreise>
<NettoPreise>
<ArtikelNR>692960603</ArtikelNR>
<ArtikelBez>Schraube M14</ArtikelBez>
<Waehrung>EUR</Waehrung>
<Preis gueltig="2006010120061231">99.95</Preis>
<StaffelPreise>
<Staffel gueltig="2006010120061231" Menge="10">98.95</Staffel>
<Staffel gueltig="2006010120061231" Menge="100">97.95</Staffel>
<Staffel gueltig="2006010120061231" Menge="1000">96.95</Staffel>
</StaffelPreise>
</NettoPreise>
</neuePreise>
--------------------------------------------------------------------------
Nicht erschrecken, dieses File wurde automat. mit WDSC 5.1 erstellt.
Das muß man/frau nicht selber reinklopfen.
DAD-File:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE DAD PUBLIC "dadId" "dad.dtd">
<DAD>
<dtdid>Test01.dtd</dtdid>
<validation>NO</validation>
<Xcollection>
<prolog>?xml version="1.0"?</prolog>
<doctype>!DOCTYPE neuePreise PUBLIC "Test01Id" "Test01.dtd"</doctype>
<root_node>
<element_node name="neuePreise">
<RDB_node>
<table name="deinebibl.NETTPRS" key="ARTIKELNR"/>
<table name="deinebibl.STAFFPR" key="ARTIKELNR GUELTIG MENGE"/>
<condition>
deinebibl.NETTPRS.ARTIKELNR=deinebibl.STAFFPR.ARTI KELNR
</condition>
</RDB_node>
<element_node name="NettoPreise" multi_occurrence="YES">
<element_node name="ArtikelNR">
<text_node>
<RDB_node>
<table name="deinebibl.NETTPRS"/>
<column name="ARTIKELNR" type="Character(20)"/>
</RDB_node>
</text_node>
</element_node>
<element_node name="ArtikelBez">
<text_node>
<RDB_node>
<table name="deinebibl.NETTPRS"/>
<column name="ARTIKELBEZ" type="Character(40)"/>
</RDB_node>
</text_node>
</element_node>
<element_node name="Waehrung">
<text_node>
<RDB_node>
<table name="deinebibl.NETTPRS"/>
<column name="WAEHRUNG" type="Character(3)"/>
</RDB_node>
</text_node>
</element_node>
<element_node name="Preis">
<text_node>
<RDB_node>
<table name="deinebibl.NETTPRS"/>
<column name="PREIS" type="Decimal(9,2)"/>
</RDB_node>
</text_node>
<attribute_node name="gueltig">
<RDB_node>
<table name="deinebibl.NETTPRS"/>
<column name="GUELTIG" type="Character(16)"/>
</RDB_node>
</attribute_node>
</element_node>
<element_node name="StaffelPreise">
<element_node name="Staffel" multi_occurrence="YES">
<text_node>
<RDB_node>
<table name="deinebibl.STAFFPR"/>
<column name="STAFFEL" type="Decimal(9,2)"/>
</RDB_node>
</text_node>
<attribute_node name="gueltig">
<RDB_node>
<table name="deinebibl.STAFFPR"/>
<column name="GUELTIG" type="Character(16)"/>
</RDB_node>
</attribute_node>
<attribute_node name="Menge">
<RDB_node>
<table name="deinebibl.STAFFPR"/>
<column name="MENGE" type="Decimal(6,0)"/>
</RDB_node>
</attribute_node>
</element_node>
</element_node>
</element_node>
</element_node>
</root_node>
</Xcollection>
</DAD>
--------------------------------------------------------------------------
In diese zwei Dateien wird das XML-Document "zerlegt".
Diese Dateien natürlich als erstes erstellen.
SQL-Anweisung:
CREATE TABLE deinebibl.NettPrs (
ArtikelNR CHAR (20) primary key,
ArtikelBez CHAR (40),
Waehrung CHAR (3),
Preis dec (9,2),
gueltig CHAR (16));
CREATE TABLE deinebibl.StaffPr (
ArtikelNR CHAR (20),
Staffel dec (9,2),
gueltig CHAR (16),
Menge dec (6,0),
PRIMARY KEY (ArtikelNR, gueltig, Menge),
foreign key (ArtikelNR) references deinebibl.NettPrs(ArtikelNR));
--------------------------------------------------------------------------
Ergebnis:
Der XML-Extender hat das XML-Document schön sauber auf zwei Tabellen zerlegt.
Physische Teildatei anzeigen
Datei . . . . . : NETTPRS Bibliothek . . . : deinebibl
Teildatei . . . : NETTPRS Satz . . . . . . : 1
Steuerung . . . : Spalte . . . . . : 1
Suchen . . . . . :
*...+....1....+....2....+....3....+....4....+....5 ....+....6....+....7....+....8....
692960603 Schraube M14 EUR r^2006010120061231
****** DATENENDE ******
Physische Teildatei anzeigen
Datei . . . . . : STAFFPR Bibliothek . . . : deinebibl
Teildatei . . . : STAFFPR Satz . . . . . . : 1
Steuerung . . . : Spalte . . . . . : 1
Suchen . . . . . :
*...+....1....+....2....+....3....+....4....+
692960603 i^2006010120061231
692960603 `^2006010120061231
692960603 Ñ^2006010120061231
****** DATENENDE ******
Gruß mom
Similar Threads
-
By mom in forum IBM i Hauptforum
Antworten: 30
Letzter Beitrag: 22-01-07, 15:03
-
By vige1000 in forum NEWSboard Linux
Antworten: 4
Letzter Beitrag: 21-12-06, 11:56
-
By Weki in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 11-09-06, 13:31
-
By kuempi von stein in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 05-07-06, 08:50
-
By Jenne in forum NEWSboard Programmierung
Antworten: 4
Letzter Beitrag: 29-03-06, 09:49
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks