DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Fonctions standard / Fonctions de gestion des fichiers XML
  • Recherche et parcours de document XML
  • Fonctions XML et threads
  • Suppression lors d'une recherche
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Lance une recherche dans un document XML. Cette recherche peut être annulée par la fonction XMLAnnuleRecherche.
Remarque : Pour effectuer une requête XPath, utilisez la fonction XMLExécuteXPath.
Exemple
// Recherche à partir de la position courante
XMLRecherche("DocXML", "pri", XMLBalise + XMLSousElément, XMLCommencePar)
TANTQUE XMLTrouve("DocXML") = Vrai
	Info("Balise trouvée " + XMLNomElément("DocXML"))
	// Elément suivant dans la recherche
	XMLSuivant("DocXML")
FIN
XMLAnnuleRecherche("DocXML")
// Positionne à la racine du document
XMLRacine("DocXML")
// Recherche à l'identique à partir du début du document
XMLRecherche("DocXML", "prix", XMLBalise + XMLContinue, XMLExact)
TANTQUE XMLTrouve("DocXML") = Vrai
	Info("Balise trouvée " + XMLNomElément("DocXML"))
	// Elément suivant dans la recherche
	XMLSuivant("DocXML")
FIN
XMLAnnuleRecherche("DocXML")
Syntaxe
<Résultat> = XMLRecherche(<Document XML> , <Valeur recherchée> [, <Type de parcours> [, <Options de recherche>]])
<Résultat> : Booléen
  • Vrai si l'élément recherché est trouvé,
  • Faux dans le cas contraire.
<Document XML> : Chaîne de caractères
Nom du document XML manipulé. Ce document contient le code XML à analyser et a été créé avec la fonction XMLDocument.
<Valeur recherchée> : Chaîne de caractères (avec guillemet) ou mot-clé NULL
Valeur recherchée dans le document XML.
Si ce paramètre est égal à NULL, toutes les balises et attributs du document XML seront lues à partir de l'élément courant, en fonction des paramètres de parcours.
<Type de parcours> : Constante (ou combinaison de constantes) optionnelle
Type de parcours à réaliser :
XMLAttributRecherche sur les noms d'attributs.
XMLBaliseRecherche sur les noms des balises.
XMLContinue
  • Combinée avec XMLBalise, XMLAttribut ou XMLValeur, continue la recherche dans la suite du document en remontant dans les niveaux de l'arborescence (si nécessaire).
  • Combinée avec XMLSousElément, continue la recherche dans la suite du document, en remontant et en redescendant dans les niveaux de l'arborescence.
XMLElément
(Valeur par défaut)
Recherche sur les noms de balises et d'attributs (équivalent à la combinaison XMLBalise + XMLAttribut).
XMLNiveauCourantRecherche uniquement dans le niveau courant de l'arborescence.
XMLSousElémentRecherche également dans toutes les balises filles. Doit être combiné avec XMLBalise, XMLAttribut ou XMLValeur.
XMLValeurRecherche sur les valeurs des balises et des attributs.
<Options de recherche> : Constante (ou combinaison de constantes) optionnelle
Options de recherche à prendre en compte :
XMLAvecNamespaceRecherche sur les éléments contenant un namespace.
WEBDEV - Code Navigateur Cette constante n'est pas disponible.
XMLCommenceParRecherche sur les éléments commençant par la valeur recherchée.
XMLContientRecherche sur les éléments contenant la valeur recherchée.
XMLExact
(valeur par défaut)
Recherche à l'identique et sensible à la casse.
XMLIgnoreLaCasseRecherche sans tenir compte de la casse de la balise. Peut être combiné avec XMLContient, XMLCommencePar ou XMLExact.
Remarques

Recherche et parcours de document XML

La fonction XMLRecherche débute la recherche à partir de la position courante dans le document XML. Pour effectuer une recherche dans tout le document, il est conseillé d'utiliser la fonction XMLRacine avant d'utiliser la fonction XMLRecherche.
La fonction XMLRecherche affecte le parcours en cours. Les fonctions XMLSuivant et XMLPrécédent se positionneront sur les éléments suivants et précédents correspondants à la recherche. Si la recherche échoue (aucun élément trouvé), la position en cours avant la recherche est conservée.
Pour annuler la recherche, utilisez la fonction XMLAnnuleRecherche. De plus, les fonctions XMLPremier, XMLDernier, XMLRacine, XMLParent et XMLFils annulent la recherche en cours.

Fonctions XML et threads

Si votre application utilise des threads, le document XML est partagé entre tous ces threads. Pour plus de détails sur la gestion des threads, consultez Gestion des threads.
Si la position courante dans un document XML est modifiée dans un thread, la position courante dans ce document XML est modifiée pour tous les threads.

Suppression lors d'une recherche

La fonction XMLSupprime utilisée lors d'une recherche annule la recherche.
Exemple à ne pas faire (ce code ne fonctionne pas) :
// Positionne à la racine du document
XMLRacine(:m_sNomDoc)
// Recherche tous les "txsr" à partir de la racine pour les supprimer
XMLRecherche(:m_sNomDoc, CParagraphe::CST_TAG , XMLBalise + XMLSousElément + XMLContinue, XMLExact)
TANTQUE XMLTrouve(:m_sNomDoc) = Vrai
	XMLSupprime(:m_sNomDoc)
	// Elément suivant dans la recherche
	XMLSuivant(:m_sNomDoc)
FIN
XMLAnnuleRecherche(:m_sNomDoc)
Le code à utiliser est le suivant :
// Suppression lors d'une recherche
// Positionne à la racine du document 
XMLRacine(:m_sNomDoc)
BOUCLE
	// Recherche tous les "txsr" à partir de la racine pour les supprimer 
	XMLRecherche(:m_sNomDoc, CParagraphe::CST_TAG , ...
					  XMLBalise + XMLSousElément + XMLContinue, XMLExact)
	SI XMLTrouve(:m_sNomDoc) = Vrai ALORS
		XMLSupprime (:m_sNomDoc)
	SINON
		SORTIR
	FIN
FIN
Composante : wd300xml.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 23/06/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale