|
FOROS PROFESIONALES WINDEV, WEBDEV y WINDEV Mobile |
| | | | | |
| Nom de rubrique en variable |
| Iniciado por YanYan, 14,ago. 2019 08:58 - 3 respuestas |
| |
| | | |
|
| |
Miembro registrado 5 mensajes |
|
| Publicado el 14,agosto 2019 - 08:58 |
Bonjour,
Je suis en cours de création d'un état qui me demande une répétition du même bloc un grand nombres de fois. Pour faire simple, mon état se compose de "n" nombre de rubrique avec la dénomination "RUB_titre_n". Je rend ces rubriques visible, les dimensionne, etc en fonctions de différents paramètres que je stock dans un tableau dynamique. Pour appliquer ces paramètres, je passe toutes mes rubriques les unes après les autres. Voici un petit extrait de mes blocs que je répète :
SI TableauOccurrence(TbtPH) > gnPhaseNum ALORS LIB_PHASE_1 = TbtPH[1]:lg_PHASE LIB_PHASE_1..Visible=Vrai ; LIB_PHASE_1..Largeur=grLgPhase ; LIB_PHASE_1..X=gnAncrage RUB_ASS_PREV_1..Visible=Vrai ; RUB_ASS_PREV_1..Largeur=grLgSPH ; RUB_ASS_PREV_1..X=gnAncrage RUB_ASS_REA_1..Visible=Vrai ; RUB_ASS_REA_1..Largeur=grLgSPH ; RUB_ASS_REA_1..X=gnAncrage SI TbtPH[1]:Lg_NumPh < 29 ALORS LIB_ASS_PH_1..Visible=Vrai ; LIB_ASS_PH_1..Largeur=grLgSPH ; LIB_ASS_PH_1..X=gnAncrage LIB_SOUD_PH_1..Visible=Vrai ; LIB_SOUD_PH_1..Largeur= grLgSPH ; LIB_SOUD_PH_1..X=gnAncrage + (1*grLgSPH) RUB_SOUD_PREV_1..Visible=Vrai ; RUB_SOUD_PREV_1..Largeur=grLgSPH ; RUB_SOUD_PREV_1..X=gnAncrage + (1*grLgSPH) FIN gnPhaseNum += 1 SI TableauOccurrence(TbtPH) > gnPhaseNum ALORS LIB_PHASE_2=TbtPH[gnPhaseNum + 1]:lg_PHASE LIB_PHASE_2..Visible=Vrai ; LIB_PHASE_2..Largeur=grLgPhase ; LIB_PHASE_2..X=gnAncrage + gnPhaseNum * grLgPhase RUB_ASS_PREV_2..Visible=Vrai ; RUB_ASS_PREV_2..Largeur=grLgSPH ; RUB_ASS_PREV_2..X=gnAncrage + gnPhaseNum * grLgPhase RUB_ASS_REA_2..Visible=Vrai ; RUB_ASS_REA_2..Largeur=grLgSPH ; RUB_ASS_REA_2..X=gnAncrage + gnPhaseNum * grLgPhase SI TbtPH[gnPhaseNum + 1]:Lg_NumPh < 29 ALORS LIB_ASS_PH_2..Visible=Vrai ; LIB_ASS_PH_2..Largeur=grLgSPH ; LIB_ASS_PH_2..X=gnAncrage + gnPhaseNum * grLgPhase LIB_SOUD_PH_2..Visible=Vrai ; LIB_SOUD_PH_2..Largeur=grLgSPH ; LIB_SOUD_PH_2..X=gnAncrage + gnPhaseNum * grLgPhase + grLgSPH RUB_SOUD_PREV_2..Visible=Vrai ; RUB_SOUD_PREV_2..Largeur=grLgSPH ; RUB_SOUD_PREV_2..X=gnAncrage + gnPhaseNum * grLgPhase + grLgSPH FIN gnPhaseNum += 1 Ma question est la suivante : Est-il possible de passer le numéro des rubriques "n" en variable afin de l'utiliser en boucle pour appliquer les paramètres aux rubriques ?
Je ne sais pas si j'ai été bien clair.  Je vous remercie par avance des vos réponses.  |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 4.361 mensajes |
|
| Publicado el 14,agosto 2019 - 09:58 |
Bonjour, As-tu essayé de passer par les indirections ? ça devrait donner un truc de ce genre
sRubSoundPrevEnCours est chaîne sRubSoundPrevEnCours="RUB_SOUD_PREV_%1" POUR nNoRubrique=1 _A_ nDernièreRubrique ALORS sRubSoundPrevEnCours=ChaîneConstruit(sRubSoundPrevEnCours,nNoRubrique) {sRubSoundPrevEnCours}..X=...
sRubSoundPrevEnCours="RUB_SOUD_PREV_%1" FIN
-- Il y a peut être plus simple, mais, ça tourne |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 5 mensajes |
|
| Publicado el 14,agosto 2019 - 10:32 |
Bonjour Voroltinquo,
Merci beaucoup de ta réponse rapide et efficace ! Encore une fonction en plus que je vais pouvoir appliquer dans mes futurs états. C'est le grand avantage de l'autoformation 
S'il y à plus simple, je suis preneur, mais je trouve cela déjà très efficace. |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 4.361 mensajes |
|
| Publicado el 14,agosto 2019 - 10:55 |
Les indirections s'appliquent à tout type de champ.
-- Il y a peut être plus simple, mais, ça tourne |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|