Modul XML: Unterschied zwischen den Versionen

Aus bafbal.de
Zur Navigation springen Zur Suche springen
Zeile 33: Zeile 33:
  
 
<nowiki>#xml_loop durchläuft die verschiedenen Items im Array eines geparsten XML und führt dabei jeweils die in er genannte Subroutine aus. Auf die einzelnen Daten des XML kann mit $XML_DATA zugegriffen werden.</nowiki>
 
<nowiki>#xml_loop durchläuft die verschiedenen Items im Array eines geparsten XML und führt dabei jeweils die in er genannte Subroutine aus. Auf die einzelnen Daten des XML kann mit $XML_DATA zugegriffen werden.</nowiki>
 +
 +
Es handelt sich dabei um eine nummerierte Prozedur. #xml_loop loopt durch die ersten XML-Daten, #xml_loop2 durch die zweiten und so weiter.
  
 
'''Parameter'''
 
'''Parameter'''

Version vom 26. September 2022, 13:19 Uhr

Das Modul XML stellt ein paar Routinen zum Umgang mit XML bereit.

#xml_clearall

#xml_clearall löscht die Liste der geparsten XMLs

Parameter

keine

Beispiel

#xml_clearall

#xml_parse

#xml_parse parst ein XML, das ist die Voraussetzung für den Einsatz der weiteren Routinen.

Es handelt sich dabei um eine nummerierte Prozedur. #xml_parse parst in die ersten XML-Daten, #xml_parse2 in die zweiten und so weiter.

Parameter

  • cnd ("condition") - wenn Y, dann wird die Prozedur ausgeführt; default Y, Funktionen werden ersetzt
  • xml - der Text, der geparst werden soll; Funktionen werden ersetzt

Beispiel

#http_request   y=post    cy="application/xml"   request=$TEXT(1)   response=resp   se=Y   acc=application/xml     $CODE$
#cout   c=$VAR(resp)
#xml_parse   xml=$VAR(resp)
#xml_loop   n=xml   er=c_test2_line   pfx=customer   path=soap:Envelope.soap:Body.ns2:searchCustomerResponse.searchCustomerResponse

#xml_loop

#xml_loop durchläuft die verschiedenen Items im Array eines geparsten XML und führt dabei jeweils die in er genannte Subroutine aus. Auf die einzelnen Daten des XML kann mit $XML_DATA zugegriffen werden.

Es handelt sich dabei um eine nummerierte Prozedur. #xml_loop loopt durch die ersten XML-Daten, #xml_loop2 durch die zweiten und so weiter.

Parameter

  • cnd - ("condition") Die Prozedur wird nur dann ausgeführt, wenn das Statement in cnd Y ergibt. Default ist Y, Funktionen werden ersetzt
  • db - ("database") Name der Datenbank, in der eine Transaktion gestartet wird, wenn ert = Y ist.
  • er - ("each row") Das Kommando, das für jede Zeile der Datenmenge aufgerufen wird. Funktionen werden ersetzt.
  • ern - ("each row no") Das Kommando, das für jede Zeile der Datenmenge aufgerufen wird. Funktionen werden nicht ersetzt. Wenn ern einen Wert hat, bleibt er unberücksichtigt. Üblicherweise wird er verwendet.
  • ert - ("each row transaction") Wenn Y, wird für jede Zeile der Datenmenge eine eigene Transaktion gestartet und nach der Abarbeitung des Kommandos wieder geschlossen.
  • m - ("maximum") Es wird maximal für die Anzahl der angegebenen Zeilen das in er angegebene Kommando ausgeführt. Dieser Parameter wird häufig dazu verwendet, während der Entwicklung mit einer geringen Zahl von Datensätzen zu arbeiten.
  • nex ("no exception") - Wenn Y, wird bei Exceptions in er nicht abgebrochen, sondern mit dem nächsten Datensatz fortgesetzt. Default N, Funktionen werden ersetzt.
  • n - Name der Datenmenge, wird benötigt, um mit $DATA() auf die einzelnen Felder zugreifen zu können.
  • path - Pfad im XML, der zu dem Array führt, durch das geloopt werden soll; Funktionen werden ersetzt
  • pfx ("prefix") - Name der einzelnen Array-Elemente; Funktionen werden ersetzt
  • sep ("separator") - Das Trennzeichen, mit dem die Elemente im Parameter path getrennt sind; Funktionen werden ersetzt, default ist der Punkt

Beispiel

siehe #xml_parse

Parameter

Beispiele


Parameter

Beispiele


Parameter

Beispiele


Parameter

Beispiele