PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV 25 → WD - Como ler tags "itens" Feed RSS de um WebDev dinâmica?
WD - Como ler tags "itens" Feed RSS de um WebDev dinâmica?
Iniciado por BOLLER ADRIANO, jun., 28 2016 6:25 AM - Sem resposta
Membro registado
3.659 mensagems
Popularité : +175 (223 votes)
Publicado em junho, 28 2016 - 6:25 AM
Como ler tags "itens" Feed RSS de um WebDev dinâmica?

//Voici un exemple complet de code.
//Traitement dans le code d`init d`une page qui renseigne une combo "ZR_ZoneRepeteeFluxRSS"


//Variables locales
sRequeteXPATH est une chaîne
nCpt est un entier
i est un entier
ptabEnregEncours est un tableau dynamique
sContenuXML est une chaîne
Res est un booléen
gsAdresseFichierXML est une chaîne = "http://carnets.voyage.free.fr/CarnetsDeVoyages.XML"


//Recupration du fichier XML
SI HTTPRequête(gsGAdresseFichierXML) ALORS
sContenuXML = HTTPDonneRésultat(httpRésultat)
FIN

SI sContenuXML <> "" ALORS
// Creation du document XML
Res = XMLDocument("DocXML", sContenuXML)

// Le document est cree ?
SI Res = Faux ALORS
SI EnModeTest() ALORS Trace("Le document n`a pas pu etre cree.")
FIN
FIN


sRequeteXPATH = "//item/title | //item/description | //item/link"

//On compte le nombre d`occurrences
SI XMLExecuteXPath("DocXML", sRequeteXPATH) ALORS
TANTQUE XMLTrouve("DocXML")
//3 items par occurrence
XMLSuivant("DocXML")
XMLSuivant("DocXML")
XMLSuivant("DocXML")
nCpt++
FIN
FIN

ptabEnregEncours = allouer un tableau dynamique de 3 par nCpt chaînes
i = 1

SI XMLExecuteXPath("DocXML", sRequeteXPATH) ALORS
TANTQUE XMLTrouve("DocXML")

//Titre du flux
ptabEnregEncours[1][i] = XMLDonnée("DocXML")
XMLSuivant("DocXML")

//Description du flux
ptabEnregEncours[2][i] = XMLDonnée("DocXML")
XMLSuivant("DocXML")

//Lien HTTP du flux
ptabEnregEncours[3][i] = XMLDonnée("DocXML")
XMLSuivant("DocXML")

i++
FIN
FIN
XMLTermine("DocXML")

i=1
POUR i = 1 A nCpt
SI EnModeTest() ALORS
Trace("pos 1 du tab : " + ptabEnregEncours[1][i])
Trace("pos 2 du tab : " + ptabEnregEncours[2][i])
Trace("pos 3 du tab : " + ptabEnregEncours[3][i])
FIN
ZoneRépétéeAjouteLigne(ZR_ZoneRepeteeFluxRSS, ptabEnregEncours[1][i], ptabEnregEncours[3][i],ptabEnregEncours[2][i])
FIN


--
Adriano José Boller
______________________________________________
Consultor e Representante Oficial da
PcSoft no Brasil
+55 (41) 9949 1800
adrianoboller@gmail.com
skype: adrianoboller
http://wxinformatica.com.br/