12.07.2015 Aufrufe

200 - Midrange Magazin

200 - Midrange Magazin

200 - Midrange Magazin

MEHR ANZEIGEN
WENIGER ANZEIGEN
  • Keine Tags gefunden...

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

TECHNIK & INTEGRATION14 beispielh debug(*input) dftactgrp(*no)**** Prototyp für XML-Handler Prozedur*1.1D XMLHand pr 10i 0 1.21.3d RetCodnd customerI 1likeds(kunde) dim(2) constd NbrRec10i 0 value*1.4d ReturnI s nd XMLPfadFile s 30 inz('XML/custom.xml')D kundedsD kundenr 5D company 30D addr1 30d plz 10D ort 30dsdsd err_msg 91 170d xml_rc 368 371b 0d xml_ele 372 379i 0Daten verfügbar sind. Dann werden dienotwendige Anzahl der Elemente derDatenstruktur gefüllt und die Handler-Prozedur aufgerufen. Deshalb sollte beider Verarbeitung der Elemente in derHandler-Prozedur immer die Anzahlder übergebenen Elemente (dritter Parameter)mitbenutzt werden.Das Ergebnis als Debug-Anzeige,erster Aufruf der Handler-Prozedur,sehen Sie in Abbildung 15. Das Ergebnisals Debug-Anzeige, zweiter Aufrufder Handler-Prozedur, ist in Abbildung16 zu sehen./freeReturnI = *off;2 3xml-into %handler(XMLHand : ReturnI)%xml(%trim(XMLPfadFile) :'doc=File ' +'path=customers/customer ' +'case=any ' +'allowmissing=yes ' +'allowextra=yes ');*inlr = *on;/end-free*** XML-Handler Prozedur4FazitDie Verwendung einer Handler-Prozedurbietet die notwendige Flexibilität,was die Verarbeitung der Daten auseinem XML-Dokument betrifft.Walter Becker óP XMLHandb*D XMLhand pi510i 0d RetCodnd customerIlikeds(kunde) dim(2) constd NbrRec10i 0 value*d i s 5s 0/freefor i = 1 to NbrRec;/end-freeP XMLHandendfor;return 0;e7615 beispielEVAL customerICUSTOMERI.KUNDENR(1) = '1 'CUSTOMERI.COMPANY(1) = 'MeiereiCUSTOMERI.ADDR1(1) = 'MeierCUSTOMERI.PLZ(1) = '67454 'CUSTOMERI.ORT(1) = 'MeiertalCUSTOMERI.KUNDENR(2) = '2 'CUSTOMERI.COMPANY(2) = 'MüllereiCUSTOMERI.ADDR1(2) = 'MüllerCUSTOMERI.PLZ(2) = '67000 'CUSTOMERI.ORT(2) = 'Müllertal> EVAL NbrRecNBRREC = 2''''''1 Definition des Prototyps für die Handler-Prozedur. Für die Handler-Prozedur muss einRückgabewert als Typ 4-Byte Integer definiert werden (siehe 1.1).2 Die Anweisung XML-INTO enthält im ersten Parameter den BIF %Handler. Für BIF%Handler muss im ersten Parameter der Name der Handler-Prozedur angegeben werden.3 Der zweite Parameter der BIF %Handler enthält den Namen einer Variablen mit freiwählbaremTyp. Die Definition des Felds muss allerdings mit der Definition des erstenParameters – also des Prototyps für die Handler-Prozedur – übereinstimmen. DieseVariable wird der Handler-Prozedur als erster Parameter (siehe oben) übergeben unddient der Kommunikation zwischen Handler-Prozedur und dem Programmteil mit derXML-INTO-Anweisung.4 Die Option „path“ muss angegeben werden.5 Definition der Handler-Prozedur.6 Der dritte Parameter der Handler-Prozedur enthält die Anzahl der Elemente, die durchden Parser gefüllt wurden. Er wird benutzt, um die Verarbeitung zu steuern.7 Return=0 bedeutet, dass der Parsing-Prozess (falls möglich) weiter fortgesetzt werdensoll. Return=1 bedeutet, dass XML-INTO nicht weiter ausgeführt werden soll.16 beispielEVAL customerICUSTOMERI.KUNDENR(1) = '3 'CUSTOMERI.COMPANY(1) = 'SchlossereiCUSTOMERI.ADDR1(1) = 'SchlosserCUSTOMERI.PLZ(1) = '67001 'CUSTOMERI.ORT(1) = 'SchlossertalCUSTOMERI.KUNDENR(2) = ' 'CUSTOMERI.COMPANY(2) = 'CUSTOMERI.ADDR1(2) = 'CUSTOMERI.PLZ(2) = ''CUSTOMERI.ORT(2) = 'EVAL NbrRecNBRREC = 1''''''70MIDRANGE MAGAZIN · 09/<strong>200</strong>7

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!