Lecture XML

Résolu
cs_eli42 Messages postés 143 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 11 juillet 2023 - 22 juin 2015 à 22:11
cs_eli42 Messages postés 143 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 11 juillet 2023 - 23 juin 2015 à 09:04
Bonjour les delphiste 7,

Malgré "F1" et mon pot "Google" toujours pas compris la lecture d'un XML
je voudrai récupérer le numéro, date, les articles (quantité, valeur, TVA, nom article), encaissement(mode,montant)


// un exemple de XML

<?xml version="1.0"?>
<ticket version="1" numero="10182" caisse="8" annule="N" memo="N" imprime="N" devise="EURO" attente="N" type="VTE" clotureID="201426102">
   <entete>
      <creation>
         <date>07/06/2015</date>
         <heure>11:18:10</heure>
      </creation>
      <modification>
         <date>07/06/2015</date>
         <heure>11:19:53</heure>
      </modification>
      <caissier numero="0">Inconnu</caissier>
      <vendeur numero="13" service="0">jojo</vendeur>
      <plateaux nombre="0"/>
   </entete>
   <lignes nombre="4">
      <article numero="1" quantite="2.000" valeur="9.90" net="19.8000" tva="20.00" code="05005010">VIN DIVERS</article>
      <article numero="2" quantite="2.000" valeur="13.50" net="27.0000" tva="20.00" code="05005010">VIN DIVERS</article>
      <article numero="3" quantite="1.000" valeur="8.10" net="8.1000" tva="5.50" code="05011001">SODA</article>
      <article numero="4" quantite="1.000" valeur="8.10" net="8.1000" tva="5.50" code="05011001">SODA</article>
   </lignes>
   <bilan montantTTC="63.00" brut="63.00" remise="0.00" service="0.00">
      <tvas montantTaxes="8.64">
         <tva taux="20.00" base="46.80" nombre="4.000">7.80</tva>
         <tva taux="5.50" base="16.20" nombre="2.000">0.84</tva>
      </tvas>
      <encaissements montantEncaisse="63.00">
         <encaissement mode="ESPECES" devise="EURO" nombre="1" rendu="oui">11.00</encaissement>
         <encaissement mode="ESPECES" devise="EURO" nombre="1" rendu="oui">11.00</encaissement>
         <encaissement mode="ESPECES" devise="EURO" nombre="1" rendu="oui">41.00</encaissement>
      </encaissements>
   </bilan>
</ticket>


2 réponses

cs_yanb Messages postés 271 Date d'inscription lundi 27 octobre 2003 Statut Membre Dernière intervention 7 juillet 2022 14
Modifié par cs_yanb le 23/06/2015 à 08:21
Salut,
Exemple rapide avec article...pareil pour les autres...
var
Node : IXMLNode;
I : Integer;
begin
XMLDocument1.LoadFromFile...
...
Node := XMLDocument1.ChildNodes.Nodes['ticket'].ChildNodes.Nodes['lignes'];
for I := 0 to Node.ChildNodes.Count-1 do
begin
Memo1.Lines.Add(Node.ChildNodes.Nodes[I].GetAttributeNS('numero',''));
Memo1.Lines.Add(Node.ChildNodes.Nodes[I].Text);
end;
end;

@+
1
cs_eli42 Messages postés 143 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 11 juillet 2023 1
23 juin 2015 à 09:04
Salut yanb,
Super ca marche nickel
un grand merci a toi
...
Beau temps belle mer
Jorgio
0
cs_eli42 Messages postés 143 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 11 juillet 2023 1
22 juin 2015 à 22:13
Oups
Je vous remercie d'avance pour votre aide ou vos suggestions.

--
0
Rejoignez-nous