Ansicht
Dokumentation

ABENABAP_IXML_LIB_DOM_FILTER_READ - ABAP IXML LIB DOM FILTER READ

ABENABAP_IXML_LIB_DOM_FILTER_READ - ABAP IXML LIB DOM FILTER READ

General Data in Customer Master   CL_GUI_FRONTEND_SERVICES - Frontend Services  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- Lesen über Filter

Beim Lesen eines DOM über Iteratoren werden standardmäßig alle Knoten eines Dokuments oder Teilbaums bzw. alle Elemente einer Liste ausgelesen. Um einen Iterator auf bestimmte Knoten bzw. Elemente zu beschränken, kann er mit einem Filter verknüpft werden. Ein Filter kann mit Factory-Methoden des Interface IF_IXML_NODE angelegt werden. Beispielsweise kann wie folgt eine Bedingung auf den Namen eines Elements gesetzt werden, wenn document vom Typ IF_IXML_DOCUMENT ist und auf ein XML-Dokument zeigt:

DATA(filter) = document->create_filter_name_ns( name = ... ).

Der statische Typ der Referenzvariable filter ist dann IF_IXML_NODE_FILTER und sie zeigt auf ein Filterobjekt, das wie folgt einem Iterator übergeben werden kann:

DATA(iterator) = document->create_iterator( ).
...
iterator->set_filter( filter ).

oder kurz

DATA(iterator) = document->create_iterator_filtered( filter ).

Der Iterator liest nur noch Elemente des an den Filter übergebenen Namens. Mit den Factory-Methoden des Interface für Knoten können u.a folgende Filter erzeugt werden:

  • CREATE_FILTER_NODE_TYPE: Bedingung für den Typ eines Knotens
  • CREATE_FILTER_NAME_NS: Bedingung für den Namen eines Knotens
  • CREATE_FILTER_ATTRIBUTE_NS: Bedingung für den Namen und Wert eines Attributs

Um mehrere Filter zu verknüpfen gibt es Factory-Methoden um spezielle Filter zu erzeugen, die Boolesche Operatoren realisieren:

  • CREATE_FILTER_AND: Und-Verknüpfung
  • CREATE_FILTER_OR: Oder-Verknüpfung
  • CREATE_FILTER_NOT: Negation

Den Eingabeparametern dieser Factory-Methoden können Referenzen auf bestehende Filterobjekte übergeben werden und es wird ein neuer Filter erzeugt, welcher die Anwendung des Boolesche Operators auf die übergebenen Filter realisiert.

Hinweis

Für mehr Informationen (weitere Filter, mögliche Parameter), siehe das Interface IF_IXML_NODE.

Filter für Iterator






ABAP Short Reference   Addresses (Business Address Services)  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 2852 Date: 20240523 Time: 163432     sap01-206 ( 42 ms )