problᅵme avec des champs en indirection dans une zone rᅵpᅵtᅵe...
Exemple :
ZoneRepetee[2].Champ = "toto" // champ de saisie
comment gᅵrer le champ en indirection sur les indices de la zone
rᅵpᅵtᅵe ?
{"ZoneRepetee.Champ1", indChamp} = "toto" // fonctionne, mais avec le
1er ᅵlᅵment de la ZR...
J'ai pensᅵ que cela se faisait comme avec une table :
{"ZoneRepetee.Champ1", indChamp}[2] = "toto"
=> MAIS Erreur : Le champ Champ1 ne supporte pas l'opᅵrateur [ ].
Evidemment, les autres tentatives avec l'indice de la ZR au milieu ne
marche pas non plus...
{"ZoneRepetee[2].Champ1", indChamp} = "toto"
{"ZoneRepetee["+eNum+"].Champ1", indChamp} = "toto" // enum = 2
Un idᅵe ?
A+
--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privᅵ)
problᅵme avec des champs en indirection dans une zone rᅵpᅵtᅵe...
Exemple :
ZoneRepetee[2].Champ = "toto" // champ de saisie
comment gᅵrer le champ en indirection sur les indices de la zone
rᅵpᅵtᅵe ?
{"ZoneRepetee.Champ1", indChamp} = "toto" // fonctionne, mais avec le
1er ᅵlᅵment de la ZR...
J'ai pensᅵ que cela se faisait comme avec une table :
{"ZoneRepetee.Champ1", indChamp}[2] = "toto"
=> MAIS Erreur : Le champ Champ1 ne supporte pas l'opᅵrateur [ ].
Evidemment, les autres tentatives avec l'indice de la ZR au milieu ne
marchent pas non plus...
{"ZoneRepetee[2].Champ1", indChamp} = "toto"
{"ZoneRepetee["+eNum+"].Champ1", indChamp} = "toto" // enum = 2
Une idᅵe ?
"Romain PETIT" <Vo...@Signature.fin> a écrit dans le message de
news:mn.23d17d8b1...@Signature.fin...
> Bonjour,
>
> problème avec des champs en indirection dans une zone répétée...
> Exemple :
> ZoneRepetee[2].Champ = "toto" // champ de saisie
>
> comment gérer le champ en indirection sur les indices de la zone
> répétée ?
> {"ZoneRepetee.Champ1", indChamp} = "toto" // fonctionne, mais avec le
> 1er élément de la ZR...
>
> J'ai pensé que cela se faisait comme avec une table :
>
> {"ZoneRepetee.Champ1", indChamp}[2] = "toto"
> => MAIS Erreur : Le champ Champ1 ne supporte pas l'opérateur [ ].
>
> Evidemment, les autres tentatives avec l'indice de la ZR au milieu ne
> marchent pas non plus...
> {"ZoneRepetee[2].Champ1", indChamp} = "toto"
> {"ZoneRepetee["+eNum+"].Champ1", indChamp} = "toto" // enum = 2
>
> Une idée ?
>
> A+
>
> --
> Romain PETIT
> http://cerbermail.com/?O16kfXOFcq
> (cliquez sur le lien ci-dessus pour me contacter en privé)
>
>
C'est un champ de saisie.
J'ai trouvé une solution, (pas très propre mais ça ira): il faut
simplement "sélectionner" l'indice en cours de la ZR :
ZoneRepetee = eIndice // = 2
{"ZoneRepetee.Champ", indChamp} = "toto"
=> C'est bien le champ de l'élément 2 qui est modifié.
Du coup, ça marche bien avec des champs clonés :
ZoneRepetee = eIndice // = 2
{"ZoneRepetee.Champ"+eIndiceClone, indChamp} = "toto" //indiceClone = 3
{ "ZoneRepetee", indchamp}[ indice].{ "Champ", indchamp} = "Toto"
J'ai pas essayé, mais sait-on jamais ?
--
Pascal ROY
(Service Informatique - SODALEC)
Romain PETIT a écrit :
La syntaxe n'est pas acceptée par l'éditeur de code...
De plus, je suis déçu, mon bricolage ne fonctionne pas pour tout :
ZoneRépétée[2].Champ..CouleurFond = iBleuClair
-> Ok, le champ de l'élement 2 de la ZR est bien bleu et est le seul
ZoneRépétée = 2 // on se positionne sur l'élément 2 de la ZR
{"ZoneRépétée.Champ, indchamp}..CouleurFond = iBleuClair
-> pas OK, *tous* les champs "Champ" sont bleus...
Et c'est la même chose pour toutes les propriétés (état, longueur...),
il n'y a que la valeur d'affectation qui fonctionne..
Du coup ca va me compliquer la vie et il va falloir bidouiller une fois
de plus...
Je me demande si je ne vais pas laisser tomber les zones répétées et
gérer moi même quelque chose qui aura un aspect similaire mais que je
pourrais contrôler à 100% (fenetre interne avec des champs clonés).
Pour que cela fonctionne, il faut affecter un attribut au champ dans la
zone répétée et travailler avec l'attribut.
ex:
{"ATT_CODE_DECLARATION"+ideclaration,indChamp}[nb]
ATT_CODE_DECLARATION : attribut de ma zone répetée qui pointe sur le
champ de saisie qui contient le code de la déclaration
ideclaration correspond à l'indice de la zone répétée traité (dans mon
exemple j'ai plusieurs zone répétée)
nb : indice de la zone répétée selectionnée
le tout me retourne la valeur saisie par l'internaute
bon dev
Romain PETIT a écrit :
Je suis en Windev et non Webdev...
(il y a bien une zone attribut dans la description de la ZR mais ce
n'est pas accessible)
Ah si, pardon, on peut utiliser les attributs en WD...
Je creuse...
Bon, ca pourrait effectivement me permettre certaines choses (donner
une propriété particulière au champ) mais je par contre je ne vois pas
trop comment utiliser les attributs avec des champs clonés, je serais
obligé de travailler avec des champs définis dans l'éditeur...
> Bon, ca pourrait effectivement me permettre certaines choses (donner une
> propriété particulière au champ) mais je par contre je ne vois pas trop
> comment utiliser les attributs avec des champs clonés, je serais obligé de
> travailler avec des champs définis dans l'éditeur...
Pff...la galère, je dois gérer au minimum : 4 champs * 10 indices pour
chaque champs * 3 attributs au minimum (couleur, couleur fond, etat,
...)
120 attributs à définir dans l'éditeur....
Grosse hésitation...
Je vais voir ce que peut donner la compil dynamique avec les champs
clonés...
> Je vais voir ce que peut donner la compil dynamique avec les champs clonés...
Bon, je devrais m'en sortir avec la compil dynamique, mais quelle usine
à gaz !
A+