Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Outils > XMLRAD
XMLRAD Environnement de développement Web XML/XSL. Avant de poster -> F.A.Q XMLRAD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/02/2003, 12h32   #1
Nouveau Membre du Club
 
Inscription : novembre 2002
Messages : 92
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 92
Points : 25
Points : 25
Par défaut XMLGram, Import et cache

Dans une action j'ai un XMLGram dans lequel j'importe un autre XMLGram, cet autre XMLGram utilise des caches, quand j'affiche le contenu XML de mon action les éléments du cache apparaissent plusieurs fois, d'ou cela peut il venir ?
Sylvain Leray est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2003, 12h33   #2
Membre régulier
 
Inscription : janvier 2003
Messages : 85
Détails du profil
Informations forums :
Inscription : janvier 2003
Messages : 85
Points : 92
Points : 92
Peux tu nous décrire un peu plus tes XMLGram ? Que mets tu en Cache ? Utilises tu un cache global ? Caches tu des grappes en fonction d'un paramètre ou non ?
__________________
Julien C.
Julien C. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2003, 12h55   #3
Nouveau Membre du Club
 
Inscription : novembre 2002
Messages : 92
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 92
Points : 25
Points : 25
J'ai un XMLGram qui me sert dans plusieurs actions, ce XMLGram contient un cache me sert à récupérer plusieurs valeurs de paramétrage de ma base de données, par exemple le nombre d'enregistrements à afficher ;-) :

Donc j'ai 1 XMLGram qui contient 1 cache (Expires = -1 , Shared coché) qui contient plusieurs DBExtract (1 pour chaque paramètre).

Ce XMLGram est ensuite importé dans chaque action qui en a besoin.
Sylvain Leray est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2003, 13h04   #4
Membre régulier
 
Inscription : janvier 2003
Messages : 85
Détails du profil
Informations forums :
Inscription : janvier 2003
Messages : 85
Points : 92
Points : 92
Je t'avoue que j'ai pas trop d'idée là... : Un petit coup de débug ce serait pas mal pour essayer d'identifier la cause de ton problème.
__________________
Julien C.
Julien C. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2003, 15h50   #5
Membre éclairé
 
Inscription : janvier 2003
Messages : 284
Détails du profil
Informations forums :
Inscription : janvier 2003
Messages : 284
Points : 311
Points : 311
Envoyer un message via MSN à Nicolas.Cogi
Est-ce que tu n'aurais pas placer l'import en tant que fils d'un DBExtract par exemple ?
Dans ce cas, l'import serait executé pour chaque enregistrement récupéré lors du DBExtract, ce qui pourrait expliquer pourquoi tu vois plusieurs fois les elements.
Sinon, post ton xmlgram histoire qu'on puisse jeter un coup d'oeil.
__________________
Nicolas
Nicolas.Cogi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2003, 16h08   #6
Nouveau Membre du Club
 
Inscription : novembre 2002
Messages : 92
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 92
Points : 25
Points : 25
En gros mon XMLGram donne :

XMLGram
|- Cache1
....
|- Cache2
......
|- Cache3
|- DBExtract3.1
|- DBExtract3.2
|- DBExtract3.3

Le résultat de ce XMLGram donne n fois le Cache1, n fois le Cache2 et 3 fois le cache 3, si j'ajoute un DBExtract3.4 en dessous de cache3, le cache 3 apparait alors 4 fois ... cela dépend en fait du nombre de DBExtract ... bizarre
Sylvain Leray est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2003, 16h14   #7
Membre éclairé
 
Inscription : janvier 2003
Messages : 284
Détails du profil
Informations forums :
Inscription : janvier 2003
Messages : 284
Points : 311
Points : 311
Envoyer un message via MSN à Nicolas.Cogi
euh... ca parait strange en effet
tu peux ouvrir le xmlgram avec le notepad et faire un copier-coller massif de tout ca ? Avec le XMLGRAM qui fait l'import aussi
__________________
Nicolas
Nicolas.Cogi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2003, 16h36   #8
Nouveau Membre du Club
 
Inscription : novembre 2002
Messages : 92
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 92
Points : 25
Points : 25
XMLGram qui importe :
---------------------------
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- edited with XML Spy v4.2 (http://www.xmlspy.com) by Fabien (Thalassa) -->
<xmlgram name="About">
<Import>
<HRef>Test.xmlgram</HRef>
<Select>/xmlgram/*</Select>
</Import>
</xmlgram>

XMLGram Importé :
-----------------------
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- edited with XMLSPY v5 rel. 3 U (http://www.xmlspy.com) by user user (THALASSA INGENIERIE INFORMATIQUE) -->
<xmlgram name="Test">
<Cache Name="CACHEDETEST">
<Expires>-1</Expires>
<Shared>1</Shared>
<Params/>
<DBExtract Name="A">
<Fields/>
<DataSource>CopieBDD</DataSource>
<Kind>Single</Kind>
<MaxRows>1</MaxRows>
<Statement><![CDATA[SELECT PARNUMERIC FROM PARAMS WHERE
PARMOTCLE = 'NBARTICLESLISTECOMPACTE']]></Statement>
<MultipleContainerName/>
<RecordName/>
<GenerateOutput>True</GenerateOutput>
<ReplaceBlankValues/>
<Object>QUERY</Object>
<Filter/>
<Params/>
</DBExtract>
<DBExtract Name="B">
<Fields/>
<DataSource>CopieBDD</DataSource>
<Kind>Single</Kind>
<MaxRows>1</MaxRows>
<Statement><![CDATA[SELECT PARNUMERIC FROM PARAMS WHERE
PARMOTCLE = 'NBARTICLESLISTEDETAILLEE']]></Statement>
<MultipleContainerName/>
<RecordName/>
<GenerateOutput>True</GenerateOutput>
<ReplaceBlankValues/>
<Object>QUERY</Object>
<Filter/>
<Params/>
</DBExtract>
</Cache>
</xmlgram>

Et dans le résultat :
----------------------
- <A>
<PARNUMERIC>3</PARNUMERIC>
</A>
- <B>
<PARNUMERIC>7</PARNUMERIC>
</B>
- <A>
<PARNUMERIC>3</PARNUMERIC>
</A>
- <B>
<PARNUMERIC>7</PARNUMERIC>
</B>
Sylvain Leray est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2003, 11h12   #9
RDM
Membre Expert
 
Inscription : mars 2002
Messages : 1 426
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 1 426
Points : 1 546
Points : 1 546
Envoyer un message via ICQ à RDM
J'arrive effectivement a reproduire le problème, je remonte l'info.
Workaround: faire une instruction cache par DBExtract, cela permet d'être plus souple dans la composition des données du document de sortie.
__________________
RDM
Tout Est Relatif
Rubrique XMLRAD: http://xmlrad.developpez.com
FAQ XMLRAD: http://xmlrad.developpez.com/faq/
RDM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/03/2003, 09h34   #10
Nouveau Membre du Club
 
Inscription : novembre 2002
Messages : 92
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 92
Points : 25
Points : 25
Citation:
faire une instruction cache par DBExtract
Je ne comprends pas bien ce que tu veux dire ...
Sylvain Leray est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/03/2003, 10h06   #11
Membre régulier
 
Inscription : janvier 2003
Messages : 85
Détails du profil
Informations forums :
Inscription : janvier 2003
Messages : 85
Points : 92
Points : 92
Je crois que RDM te conseille de mettre un seul DBExtract par instruction Cache. Visiblement tu as un DBExtract "A" et "B". Créés deux instructions Cache "CacheA" et "CacheB" dans lesquels tu mets respectivements tes DBExtract "A" et "B".
__________________
Julien C.
Julien C. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/03/2003, 10h13   #12
Nouveau Membre du Club
 
Inscription : novembre 2002
Messages : 92
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 92
Points : 25
Points : 25
Oui, mais en quoi mon document sera plus souple ?
Sylvain Leray est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/03/2003, 10h23   #13
RDM
Membre Expert
 
Inscription : mars 2002
Messages : 1 426
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 1 426
Points : 1 546
Points : 1 546
Envoyer un message via ICQ à RDM
le degré de granularité du cache est plus fin en mettant une insutrction DBExtract par instruction Cache.
Actuellement, tu as la grappe A+B qui est mise en cache. Si a un moement tu n'as besoin que de B par exemple il te sera impossible de le dissocier de A. si tu dois mettre à jour le cache, tu dois réeffectuer obligatorement les 2 requêtes.
Si tu as une requête C et que tu veuilles faire A+C ou bien B+C tu auras un peu de mal ;-)
__________________
RDM
Tout Est Relatif
Rubrique XMLRAD: http://xmlrad.developpez.com
FAQ XMLRAD: http://xmlrad.developpez.com/faq/
RDM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/03/2003, 17h09   #14
Nouveau Membre du Club
 
Inscription : novembre 2002
Messages : 92
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 92
Points : 25
Points : 25
Ah oui en effet, en fait dans mon cas j'ai utilisé 5 caches mais il y a des informations que j'utilise toujours en même temps donc je les ai regroupées dans 1 seul et c'est là que j'ai rencontré mon problème.
Sylvain Leray est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h10.


 
 
 
 
Partenaires

Hébergement Web