Utilisation du code généré par l'expert Liaison de données XML

De RAD Studio
Aller à : navigation, rechercher

Remonter à Abstraction de documents XML avec l'expert Liaison de données


Quand l'expert a généré l'ensemble d'interfaces et de classes d'implémentation, vous pouvez les utiliser pour manipuler des documents XML correspondant à la structure du document ou du schéma fourni à l'expert. Tout comme pour l'utilisation des composants XML intégrés, votre point de départ est le composant Xml.XMLDoc.TXMLDocument qui apparaît dans la catégorie Internet de la palette d'outils.

Pour manipuler un document XML, suivez les étapes ci-après :

  1. Obtenez une interface pour le noeud racine de votre document XML. Vous pouvez le faire de trois manières :
Méthode Description

Placez un composant TXMLDocument sur votre fiche ou votre module de données. Liez le TXMLDocument à un document XML en initialisant la propriété FileName.

(Vous pouvez aussi utiliser à l'exécution une chaîne XML en initialisant la propriété XML.) Puis, dans votre code, appelez la fonction globale générée par l'expert pour obtenir une interface sur le noeud racine du document XML. Si, par exemple, l'élément racine du document XML est la balise <StockList>, l'expert génère par défaut une fonction Getstocklist, qui renvoie une interface IXMLStockListType.  :

     var
       StockList: IXMLStockListType;
     begin
       XMLDocument1.FileName := 'Stocks.xml';
       StockList := Getstocklist(XMLDocument1);
     XMLDocument1->FileName := "Stocks.xml";
     _di_IStockListType StockList = GetStockListType(XMLDocument1);

Appel de la fonction Load... générée

Appelez la fonction Load... générée pour créer et lier l'instance de TXMLDocument et obtenir son interface en une seule étape. Par exemple, avec le document XML décrit plus haut :

     var
       StockList: IXMLStockListType;
     begin
       StockList := Loadstocklist('Stocks.xml');
     _di_IStockListType StockList = LoadStockListType("Stocks.xml");

Appel de la fonction New... générée

Appelez la fonction New... générée pour créer l'instance de TXMLDocument pour un document vide lorsque vous voulez créer toutes les données dans votre application :

     var
       StockList: IXMLStockListType;
     begin
       StockList := Newstocklist;
     _di_IStockListType StockList = NewStockListType();
  1. Cette interface possède des propriétés qui correspondent aux sous-noeuds de l'élément racine du document, ainsi que des propriétés qui correspondent aux attributs de cet élément racine. Vous pouvez les utiliser pour parcourir la hiérarchie du document XML, modifier les données du document, etc.
  2. Pour enregistrer les modifications effectuées en utilisant les interfaces générées par l'expert, appelez la méthode SaveToFile du composant TXMLDocument ou lisez sa propriété XML.

Conseil :  Si vous définissez la propriété Options de l'objet TXMLDocument pour inclure doAutoSave, il n'est pas nécessaire d'appeler explicitement la méthode SaveToFile.

Voir aussi