DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Fonctions standard / Fonctions de gestion des fichiers XML
  • Exemple de manipulation d'un fichier XML
XMLConstruitChaîne (Exemple)
Exemple de manipulation d'un fichier XML
Etats et Requêtes
sMonDocXML est une chaîne = "XML"
sInfoXML est une chaîne // Chaîne résultat
nIndice est un entier
nPositionXML est un entier
 
XMLDocument(sMonDocXML, "") // Crée un document XML vierge
 
// Facture 1
// ----------
XMLAjouteFils(sMonDocXML, "LISTE_DE_FACTURES", "", Vrai) // Elément Racine
XMLAjouteFils(sMonDocXML, "FACTURE", "", Vrai) // Noeud "Père"
 
// Infos sur le facture
XMLAjouteFils(sMonDocXML, "NUMERO", NumériqueVersChaîne(123))
XMLAjouteFils(sMonDocXML, "TOTAL", NumériqueVersChaîne(420.50))
XMLAjouteFils(sMonDocXML, "TVA", NumériqueVersChaîne(19.6))
XMLAjouteFils(sMonDocXML, "NOTES", "Informations sur la facture 123")
 
// Détail des lignes de FACTURE :
POUR nIndice = 1 À 5
XMLAjouteFils(sMonDocXML, "LIGNE_FACTURE", NumériqueVersChaîne(nIndice), Vrai)
XMLAjouteFils(sMonDocXML, "DESCRIPTION", "Description ligne " + nIndice)
XMLAjouteFils(sMonDocXML, "MONTANT", NumériqueVersChaîne(84.25))
// Remonte d'un niveau pour la prochaine ligne (ou pour la suite)
XMLParent(sMonDocXML)
FIN
 
// Facture 2
// -----------
XMLParent(sMonDocXML)
 
// Remonte d'un niveau pour se mettre au même niveau que la facture précédente
// OU ici XMLRacine(sMonDocXML) car il n'y a plus qu'un niveau
XMLAjouteFils(sMonDocXML, "FACTURE", "", Vrai) // Noeud "Père"
XMLAjouteFils(sMonDocXML, "NUMERO", NumériqueVersChaîne(456))
 
// Infos sur le facture
XMLAjouteFils(sMonDocXML, "TOTAL", NumériqueVersChaîne(420.50))
XMLAjouteFils(sMonDocXML, "TVA", NumériqueVersChaîne(5.5))
XMLAjouteFils(sMonDocXML, "NOTES", "Informations sur la facture 456")
 
// Détail des lignes de FACTURE :
POUR nIndice = 1 À 10
// Sauve la position en cours
nPositionXML = XMLSauvePosition(sMonDocXML)
XMLAjouteFils(sMonDocXML, "LIGNE_FACTURE", NumériqueVersChaîne(nIndice), Vrai)
XMLAjouteFils(sMonDocXML, "DESCRIPTION", "Description ligne " + nIndice)
XMLAjouteFils(sMonDocXML, "MONTANT", NumériqueVersChaîne(42.5))
// Autre moyen par rapport à XMLParent
// Restaure la position pour la prochaine ligne (ou pour la suite)
XMLRetourPosition(sMonDocXML, nPositionXML)
FIN
 
sInfoXML = XMLConstruitChaîne(sMonDocXML) // Récupère le XML construit
XMLTermine(sMonDocXML) // Libère le document XML
 
// Création du fichier XML
fSauveTexte(ComplèteRep(fRepExe()) + "Facture.xml", sInfoXML)
// Affichage dans l'appli associée aux XML
LanceAppliAssociée(ComplèteRep(fRepExe()) + "Facture.xml")
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

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