Bonjour,
Dans le PauseCafé n°41 présentant XML-INTO, je souhaiterais savoir dans l'utilisation via un handler à quoi correspond la valeur suivant le DIM(?). Est ce le nombre de fois dont je trouve la balise <XXX> recherchée ?
Dans mon cas, je ne la connais pas.
Est on obligé de passer par un tableau ?
Merci
Fonctionnement du XML-INTO via handler
-
- Site Admin
- Messages : 813
- Enregistré le : mer. 14 févr. 2007, 18:00:03
- Localisation : Nantes
- Contact :
XML-INTO
vous ne connaissez pas le nomdre d’occurrence et c'est normal... c''est pour cela qu'est fait le HANDLER.
DIM correspond au nombre d’occurrence que vous recevez lors d'UN appel, XML-INTO gère le nomre d'appel.
par exemple, vous mettez DIM(10) et il y a 72 occurrences, votre handler est appelé 8 fois, 7 fois avec 10 occurrences, 1 fois avec 2 !
c'est la raison pour laquelle vous recevez le nombre d’occurrences transmises
Dans notre exemple "nbelem"
DIM correspond au nombre d’occurrence que vous recevez lors d'UN appel, XML-INTO gère le nomre d'appel.
par exemple, vous mettez DIM(10) et il y a 72 occurrences, votre handler est appelé 8 fois, 7 fois avec 10 occurrences, 1 fois avec 2 !
c'est la raison pour laquelle vous recevez le nombre d’occurrences transmises
Code : Tout sélectionner
D handler PR 10I 0
D commarea 255A
D uneDS dim(10)
D CONST
D nbelem 10U 0 value
Christian Massé (Volubis.fr)
(sans texte)
Merci pour cette précision ;
pour autant en utilisant DIM(10), le traitement ne me prend que l'occurence n°1 puis n°10 puis n°20 etc ...
Avez vous une idée du problème ? (ci joint le code)
Voici la définition de la procédure dans le programme "main"
et dans ma procédure
puis la boucle
pour autant en utilisant DIM(10), le traitement ne me prend que l'occurence n°1 puis n°10 puis n°20 etc ...
Avez vous une idée du problème ? (ci joint le code)
Voici la définition de la procédure dans le programme "main"
Code : Tout sélectionner
DtrtAni pr 10I 0
D flag n
D ani likeds(anids)
D dim(10)
D const
D nbElem 10I 0 Value
Code : Tout sélectionner
PtrtAni B
* Paramètres en entrée
D PI 10I 0
D flag n
D ani likeds(ANIDS)
D dim(10)
D const
D nbElem 10I 0 value
Code : Tout sélectionner
for i = 1 to nbelem;
... write
endfor;
(sans texte)
Ne pas tenir compte de ma dernière demande ; le flag me faisait sortir trop tôt de la boucle