Fonction de script : Crée un nouvel élément XML et l'insère devant un autre élément.
XML_INSERT_BEFORE(élément parent, élément de référence, nom, valeur)
Élément de syntaxe |
Description/format |
---|---|
Élément parent |
Référence à l'élément où se trouve l'élément de référence. |
Élément de référence | Référence à l'élément devant lequel le nouvel élément doit être inséré. Doit se trouver dans l'élément parent. Format : littéral de script ou variable de script |
Nom | Nom du nouvel élément Format : littéral de script ou variable de script |
Valeur | Valeur du nouvel élément Format : littéral de script ou variable de script |
Code retour |
---|
Référence au nouvel élément. |
L'élément de script insère un nouvel élément devant l'élément existant spécifié, dans le document XML ouvert (XML_OPEN). L'élément parent, l'élément de référence qu'il contient et le nom avec la valeur du nouvel élément doivent être spécifiés.
L'élément de référence saisi doit se référer à un sous-élément direct de l'élément parent. Sinon, une erreur d'exécution se produit à l'exécution de l'élément de script.
L'élément de script ne modifie la structure XML que dans la mémoire. Le contenu de l'onglet Documentation n'est pas affecté.
Notez que les espaces ne sont pas autorisés dans le nom de l'élément et provoquent une erreur d'exécution.
Dans l'exemple suivant, l'onglet Documentation est ouvert sous forme de document XML. Le nouvel élément ("New_Element") sera inséré avant le sous-élément ("SubChild2"), dans l'élément parent ("Child").
Tous les sous-éléments de l'élément parent s'afficheront ensuite et subiront un contrôle permettant de vérifier si l'élément a été inséré avec succès.
:SET &XMLDOCU#=XML_OPEN(DOCU,,"@Details")
:IF &XMLDOCU# <> ""
:SET &PARENT# = XML_SELECT_NODE(&XMLDOCU#,"Child")
:SET &REF# = XML_SELECT_NODE(&XMLDOCU#,"Child/SubChild2")
:SET &NEW# = XML_INSERT_BEFORE(&PARENT#,&REF#,"New_Element","Test")
:SET &ELEMENT# = XML_GET_FIRST_CHILD(&PARENT#)
:WHILE &ELEMENT# <> ""
: SET &NAME# = XML_GET_NODE_NAME(&ELEMENT#)
: P 'Element: &NAME#'
: SET &ELEMENT# = XML_GET_NEXTSIBLING(&ELEMENT#)
:ENDWHILE
:ENDIF
:XML_CLOSE &XMLDOCU#
Résultat dans le rapport d'activation :
2013-08-14 13:32:27 – U0020408 Element : SubChild1
2013-08-14 13:32:27 – U0020408 Element : New_Element
2013-08-14 13:32:27 – U0020408 Element : SubChild2
Rubriques connexes :
Elément de script | Description |
---|---|
XML_OPEN | Ouvre un document XML en vue du traitement |
:XML_CLOSE | Ferme un document XML |
Élément de script – Lecture ou modification d'objets
Exemples
Détermination du message et du numéro de l'erreur
Généralités sur les scripts
Éléments de script - Liste alphabétique
Éléments de script - Division fonctionnelle