Voici un exemple. Je créé le fichier xml avec windev en web service
DocXML est une chaîne = "XML" InfoXML est une chaîne // Chaîne résultat sChaineansi est une chaîne
XMLDocument(DocXML,"") // Crée un document XML vierge
XMLAjouteFils(DocXML,"LISTESTOCK","",Vrai) // Elément Racine
POUR TOUT SOLID_STOCK AVEC "SOLID_ID >"+ n_id XMLAjouteFils(DocXML,"STOCK","",Vrai) XMLAjouteFils(DocXML,"NRPRODUIT",SOLID_STOCK.NRPRODUIT) XMLAjouteFils(DocXML,"STOCK_REEL",NumériqueVersChaîne(SOLID_STOCK.STOCK_REEL)) XMLAjouteFils(DocXML,"STOCK_DISPMIN",NumériqueVersChaîne(SOLID_STOCK.STOCK_DISPIM)) XMLAjouteFils(DocXML,"STOCK_DISPATERM",NumériqueVersChaîne(SOLID_STOCK.STOCK_DISPATERM)) XMLAjouteFils(DocXML,"SOLID_ID",NumériqueVersChaîne(SOLID_STOCK.SOLID_ID)) // ----------- XMLParent(DocXML) FIN
InfoXML = XMLConstruitChaîne(DocXML) // Récupère le XML construit //fSauveTexte(fRepExe() + "\test.xml",infoxml)
sChaineansi = Crypte(InfoXML,"1234",crypteRapide+crypteAnsi,Vrai) XMLTermine(DocXML) // Libère le document XML
RENVOYER sChaineansi
et je récupère le fichier du coté Pocket
ststock est une STSTCOL_SOLID_STOCK tabListestock est un tableau de 0 STSTCOL_SOLID_STOCK
InfoXML est une chaîne
InfoXML = fChargeTexte(ComplèteRep(fRepExe())+"stock.xml") XMLDocument("DocXML",InfoXML) // on se positionne sur la racine InfoXML = XMLConstruitChaîne("DocXML")
// Enregistrement du fichier XML //fSauveTexte("ExampleModifié.xml",SourceXML)
XMLRacine("DocXML") BOUCLE // Recherche d'un "CLIENTS" dans les éléments XMLRecherche("DocXML","STOCK",XMLElément+XMLSousElément+XMLContinue,XMLIgnoreLaCasse+XMLExact) SI PAS XMLTrouve("DocXML") ALORS SORTIR XMLFils("DocXML") XMLPremier("DocXML") TANTQUE PAS XMLEnDehors("DocXML") SELON XMLNomElément("DocXML") CAS "NRPRODUIT" ststock:m_NRPRODUIT = XMLDonnée("DocXML") CAS "STOCK_REEL" ststock:m_STOCK_REEL = Val(XMLDonnée("DocXML")) CAS "STOCK_DISPMIN" ststock:m_STOCK_DISPIM = Val(XMLDonnée("DocXML")) CAS "STOCK_DISPATERM" ststock:m_STOCK_DISPATERM = Val(XMLDonnée("DocXML")) CAS "SOLID_ID" ststock:m_SOLID_ID = Val(XMLDonnée("DocXML")) FIN XMLSuivant("DocXML") FIN TableauAjoute(tabListestock,ststock) XMLParent("DocXML") FIN
POUR TOUT ELEMENT ststock DE tabListestock HLitRecherchePremier(PRODUIT,NRPRODUIT,ststock:m_NRPRODUIT) SI HTrouve(PRODUIT) ALORS HLitRecherchePremier(SOLID_STOCK,NRPRODUIT,ststock:m_NRPRODUIT) SI HTrouve(SOLID_STOCK) ALORS SOLID_STOCK.STOCK_REEL = ststock:m_STOCK_REEL SOLID_STOCK.STOCK_DISPIM = ststock:m_STOCK_DISPIM SOLID_STOCK.STOCK_DISPATERM = ststock:m_STOCK_DISPATERM SOLID_STOCK.SOLID_ID = ststock:m_SOLID_ID HModifie(SOLID_STOCK) SINON SOLID_STOCK.NRPRODUIT = ststock:m_NRPRODUIT SOLID_STOCK.STOCK_REEL = ststock:m_STOCK_REEL SOLID_STOCK.STOCK_DISPIM = ststock:m_STOCK_DISPIM SOLID_STOCK.STOCK_DISPATERM = ststock:m_STOCK_DISPATERM SOLID_STOCK.SOLID_ID = ststock:m_SOLID_ID HAjoute(SOLID_STOCK) FIN FIN FIN XMLTermine("DocXML") |