2012-04-05 1 views
2

J'utilise TXMLTransformProvider pour éditer un fichier XML en utilisant TClientDataSet (ce qui est plutôt cool). Je veux être en mesure de contrôler l'ordre des nœuds dans le fichier XML - en utilisant une clé primaire ou similaire. Mais quand je fais ClientDataSet1.ApplyUpdates les nouveaux enregistrements sont ajoutés à la fin du fichier XML plutôt que dans mon ordre préféré (l'ordre que je les vois dans le DBGrid). Existe-t-il un moyen facile de conserver ma commande ou dois-je abandonner mon TXMLTransformProvider pour sauvegarder les données et les coder manuellement en utilisant un TXMLDocument.Contrôle de l'ordre des nœuds XML lors de l'utilisation de TXMLTransformProvider

+0

Si vous y réfléchissez, c'est le bon comportement - de nouveaux enregistrements de base de données sont toujours ajoutés, et je suppose que le comportement ne changera pas ici .. Il est digne d'une inspection vcl pour confirmer, mais mon intuition serait pour traiter le problème comme si votre fichier xml est une table de base de données. –

+0

Vous ne pouvez pas simplement utiliser la méthode SaveToFile de ClientDataSet et lui donner un nom de fichier comme MyData.xml. –

Répondre

0

J'ai renoncé à cela et ai sorti manuellement le xml du TClientDataSet en utilisant un TXMLDocument, pas le plus joli mais fonctionne tout de même.

Questions connexes