|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre régulier
![]() |
Bonsoir,
une petite question j'essaye de trouver une instruction qui me permette de modifier ou de supprimer une valeur dans un flux XML. J'ai essayé l'instruction 'File Instruction' ... le paramètre LOAD est ok par contre le faite de mettre une valeur dans 'Field Name' ne change rien nous avons en retour toujours le même conteneur En ce qui concerne l'update cela ne fonctionne pas du tout ... et le delete il me supprime le fichier ... en regardant dans le code Delphi dans TFile.DoProcess on voit que pour le "Delete" il supprime le fichier et dans cette même fonction il ne va pas du tout charger le paramètre 'Field Name' qui est présent dans l'écran du XMLGram correspondant. Quelqu'un a une idée à ce souci ? car en ce moment je suis obligé de coder en Delphi juste pour mettre à jours une valeur, ou de suppprimer une valeur dans un flux XML. Je ne trouve pas cela très souple vue qu'à priori les fonctions dans le XMLGram sont faites pour ça. Merci pour vos réponses Michel |
|
|
00
|
|
|
#2 |
|
Membre éprouvé
![]() ![]() |
Salut,
Il faut ajouter dans le context le type d'action qu'on va effectuer sur le flux avec le nom d'élément suivant : XMLC_Operation = 'INSERT' UPDATE ou DELETE Tu as un exemple dans la demo Gallery sur l'utilisation de File. Sylvain
__________________
.NET / ASP.NET MVC / Delphi / XMLRAD / XSL / Technos Web Mon Blog : http://blog.developpez.com/index.php?blog=89 Mes Articles : http://sjames.developpez.com/ Rubrique XMLRAD: http://xmlrad.developpez.com |
|
|
00
|
|
|
#3 |
|
Membre éclairé
![]() |
c'est pas du tout un soucis, la XMLInstruction permet justement de charger (LOAD), enregistrer (SAVE) ou supprimer (DELETE) un fichier. Ca n'a rien à voir avec le contenu du fichier lui-meme.
Cette instruction s'utilise conjointement avec du code ou d'autres instructions pour manipuler le contenu, typiquement une instruction XMLUpdate pour manipuler un document XML, puis l'enregistrer sur disque. Donc ici, une premiere instruction FILE pour charger le fichier dans un XMLCursor, une instruction XMLUpdate pour manipuler ce XMLCursor via un fragment, puis une autre instruction File pour enregistrer le XMLCursor modifié sur disque. Tu peux directement utiliser la méthode UPDATE dans l'instruction FILE pour faire ca, qui fait l'integralité d'un coup. Il utilise un XMLUpdater en interne, qui a besoin, comme le dit Sylvain de parametres mis dans le Context. Pour savoir quoi faire dans le document XML en question. Ca utilise un fragment, je te recommande de regarder le code source pour capter comment ca marche.
__________________
Nicolas |
|
|
00
|
|
|
#4 |
|
Membre régulier
![]() |
Merci de vos directions je regarde cela et je vous tiens au courant de mes avancés
Michel |
|
|
00
|
|
|
#5 |
|
Membre régulier
![]() |
Bon voila je viens de regarder avec la démo "Gallery" en faite si j'ai bien tout saisi on peut modifier/insérer/supprimer une grappe complète dans un flux XML via l'XMLInstruction "LOAD" avec comme structure:
Code :
<CONTACTS><CONTACT>...</CONTACT></CONTACTS> Merci de vos réponses |
|
|
00
|
|
|
#6 |
|
Membre éclairé
![]() |
il te faut décrire integralement ta grappe XML avec les fragments, en utilisant des fragments type RECORD ou DATASET.
Un Record est un "enregistrement" simpe, tandis qu'un dataset est un ensemble d'enregistrements simple contenus dans un element container. Tu peux penser à un DBExtract type Simple ou Multiple pour avoir une comparaison. Ensuite, un fragment record ou dataset contient un ensemble de field, dont les valeurs seront récupérer du Context. Vive le code source et les exemples fournis pour comprendre comment ca marche précisement La clef, c'est que tes valeurs dans le Context doivent etre bien nommés. Regarde dans les XMLGram de Delos (fournis avec XMLRAD) et le code dans XMLGram.pas, TXMLUpdater.DoProcess. Bon courage
__________________
Nicolas |
|
|
00
|
|
|
#7 |
|
Membre éprouvé
![]() ![]() |
Si Nicolas il a dit bon courage :-) c'est loin d'être innocent lol 8)
__________________
.NET / ASP.NET MVC / Delphi / XMLRAD / XSL / Technos Web Mon Blog : http://blog.developpez.com/index.php?blog=89 Mes Articles : http://sjames.developpez.com/ Rubrique XMLRAD: http://xmlrad.developpez.com |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com