XML_APPEND_BEFORE

Verwenden Sie die Script-Funktion XML_APPEND_BEFORE, um ein bestimmtes XML-Element vor einem anderen Element im geöffneten XML-Dokument einzufügen und dadurch das Element in die XML-Struktur zu verschieben. Das verschobene Element befindet sich dann auf derselben Ebene wie das andere Element, das Referenzelement.

Wichtig!

  • Die XML-Struktur wird nur im Speicher geändert. Die Änderungen von XML_APPEND_BEFORE werden nicht auf der strukturierten Seite in der Dokumentation angezeigt.  
  • Verschieben Sie das Element nicht auf die oberste Ebene. Das Referenzelement kann sich nicht auf der obersten Ebene befinden.

Tipp: Verwenden Sie die Script-Funktion XML_OPEN, um das XML-Dokument zu öffnen. Weitere Informationen finden Sie unter XML_OPEN.

Syntax

XML_APPEND_BEFORE (Element, Referenzelement)

Script-Funktion und Parameter

  • XML_APPEND_BEFORE

    Verschiebt ein XML-Element vor ein anderes Element.
  • Element

    Verweis auf das zu verschiebende Element
    Format: Script-Literal oder Script-Variable
  • Referenzelement

    Verweis auf das Element, vor dem Sie das Element
    einfügen möchten.

Rückgabewert

Diese Script-Funktion gibt den Verweis auf das eingefügte Element zurück.

Beispiel

Das folgende Beispiel öffnet die strukturierte Dokumentationsseite "@Details" des eigenen Objekts als XML-Dokument. Das Script verändert die ursprüngliche Reihenfolge der vorhandenen Elemente. Das Element "Sub-Child1" in "Child" wird vor das Element "Sub-Child3" in "Child2" verschoben.

Screenshot der strukturierten Dokumentationsseite "Details" eines Script-Objekts mit dem Namen "XML_APPEND_BEFORE"

:SET &XMLDOCU#=XML_OPEN(DOCU,,"@Details")

:IF &XMLDOCU# <> ""
:SET &ELEMENT1# = XML_SELECT_NODE(&XMLDOCU#,"Child/Sub-Child1")
:SET &ELEMENT2# = XML_SELECT_NODE(&XMLDOCU#,"Child2/Sub-Child3")
:SET &NEW# = XML_APPEND_BEFORE(&ELEMENT1#,&ELEMENT2#)

:SET &ELEMENT# = XML_SELECT_NODE(&XMLDOCU#,"Child2")
: SET &ELEMENT# = XML_GET_FIRST_CHILD(&ELEMENT#)

:WHILE &ELEMENT# <> ""
: SET &NAME# = XML_GET_NODE_NAME(&ELEMENT#)
: P 'Element: &NAME#'
: SET &ELEMENT# = XML_GET_NEXTSIBLING(&ELEMENT#)
:ENDWHILE

:ENDIF

:XML_CLOSE &XMLDOCU#

Im Aktivierungsreport werden alle Elemente angezeigt, die sich innerhalb von "Child2" befinden:

Screenshot des letzten Reports des Script-Objekts XML_APPEND_BEFORE mit "sub-child1" und "sub-child3"

Siehe auch: