Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[WD12] Zone répétée et indirection

71 views
Skip to first unread message

Romain PETIT

unread,
Nov 4, 2008, 10:16:10 AM11/4/08
to
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
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ᅵ)


Romain PETIT

unread,
Nov 4, 2008, 10:17:27 AM11/4/08
to
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 ?

patrice

unread,
Nov 4, 2008, 10:48:15 AM11/4/08
to
champ1 est un champ présent dans la zonerépétée ou une "colonne" de la
zonerépétée (celle défini quand on double click sur la zone)
car pour les colonnes, la notation zonerepetee.colonne[i] est valide


"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é)
>
>


Romain PETIT

unread,
Nov 4, 2008, 10:54:40 AM11/4/08
to
patrice a présenté l'énoncé suivant :

> champ1 est un champ présent dans la zonerépétée ou une "colonne" de la
> zonerépétée (celle défini quand on double click sur la zone)
> car pour les colonnes, la notation zonerepetee.colonne[i] est valide

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

Pascal ROY

unread,
Nov 5, 2008, 2:31:54 AM11/5/08
to
A tout hasard, as-tu essaye

{ "ZoneRepetee", indchamp}[ indice].{ "Champ", indchamp} = "Toto"

J'ai pas essayé, mais sait-on jamais ?
--
Pascal ROY
(Service Informatique - SODALEC)

Romain PETIT a écrit :

Romain PETIT

unread,
Nov 5, 2008, 4:31:32 AM11/5/08
to
Pascal ROY avait écrit le 05/11/2008 :
> A tout hasard, as-tu essaye
>
> { "ZoneRepetee", indchamp}[ indice].{ "Champ", indchamp} = "Toto"
> J'ai pas essayé, mais sait-on jamais ?

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).

Sébastiener BERTHELOT

unread,
Nov 5, 2008, 5:54:41 AM11/5/08
to

Bonjour

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 :

Romain PETIT

unread,
Nov 5, 2008, 6:26:27 AM11/5/08
to
Dans son message précédent, Sébastiener BERTHELOT a écrit :

> Bonjour
>
> Pour que cela fonctionne, il faut affecter un attribut au champ dans la zone
> répétée et travailler avec l'attribut.

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)

Romain PETIT

unread,
Nov 5, 2008, 6:30:22 AM11/5/08
to
Romain PETIT avait prétendu :

> Dans son message précédent, Sébastiener BERTHELOT a écrit :
>> Bonjour
>>
>> Pour que cela fonctionne, il faut affecter un attribut au champ dans la
>> zone répétée et travailler avec l'attribut.
>
> 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...

Romain PETIT

unread,
Nov 5, 2008, 7:06:45 AM11/5/08
to
Romain PETIT a exprimé avec précision :

> 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...

Romain PETIT

unread,
Nov 5, 2008, 11:08:44 AM11/5/08
to
Romain PETIT a couché sur son écran :

> 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...

Romain PETIT

unread,
Nov 5, 2008, 11:38:43 AM11/5/08
to
Romain PETIT vient de nous annoncer :

> 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+

0 new messages