Boucles : Différence entre versions

De YoWiki
Sauter à la navigation Sauter à la recherche
Ligne 5 : Ligne 5 :
 
</blockquote>
 
</blockquote>
 
<h2 id="d-finition">Définition</h2>
 
<h2 id="d-finition">Définition</h2>
<p>Les boucles permettent de restituer &quot;à la chaîne&quot; les données stockées grâce à un <a href="http://wiki.hercule.co/repeaters">repeater</a>.</p>
+
<p>Les boucles permettent de restituer &quot;à la chaîne&quot; les données stockées grâce à un [[Repeaters|repeater]].</p>
 
<h2 id="contexte">Contexte</h2>
 
<h2 id="contexte">Contexte</h2>
 
<p>Une fois que le formulaire a permis de collecter un ensemble de données dans une liste, il faut pouvoir réutiliser ces données dans un document.</p>
 
<p>Une fois que le formulaire a permis de collecter un ensemble de données dans une liste, il faut pouvoir réutiliser ces données dans un document.</p>
Ligne 16 : Ligne 16 :
 
<li>Yves (3 ans)</li>
 
<li>Yves (3 ans)</li>
 
</ul>
 
</ul>
<p>Pour cela, dans la configuration du SmartDoc (onglets préfixés par “Doc …”), il suffit d’indiquer dans la colonne “options” l’attribut “loop” et lui donner la valeur de la variable de référence à répéter. Cet attribut peut s’appliquer sur une ligne simple ou directement sur un <a href="http://wiki.hercule.co/blocs">#BLOC</a>.  
+
<p>Pour cela, dans la configuration du SmartDoc (onglets préfixés par “Doc …”), il suffit d’indiquer dans la colonne “options” l’attribut “loop” et lui donner la valeur de la variable de référence à répéter. Cet attribut peut s’appliquer sur une ligne simple ou directement sur un [[Blocs|bloc]].  
 
Puis, dans la colonne “contenu”, il faut utiliser la syntaxe suivante : </p>
 
Puis, dans la colonne “contenu”, il faut utiliser la syntaxe suivante : </p>
 
<p><code>{ENFANTS.PRENOM} ({ENFANTS.AGE} ans)</code></p>
 
<p><code>{ENFANTS.PRENOM} ({ENFANTS.AGE} ans)</code></p>
 
<p>En image :  </p>
 
<p>En image :  </p>
<p><img src="/capture_d’écran_2019-07-16_à_15.51.48.png" alt="capture_d’écran_2019-07-16_à_15.51.48.png"></p>
+
<p>
 +
[[Fichier:Loops.png|vignette|Restitution grâce à une boucle (loop) des données collectées sur les enfants dans le formulaire]]
 +
</p>
 
<p>Attention, il est possible d’utiliser les sous-variables d’une liste (ici, par exemple, ENFANTS.PRENOM), uniquement à l’intérieur d’une boucle (loop). </p>
 
<p>Attention, il est possible d’utiliser les sous-variables d’une liste (ici, par exemple, ENFANTS.PRENOM), uniquement à l’intérieur d’une boucle (loop). </p>

Version du 24 juillet 2019 à 10:17

Les boucles

Il est recommandé de lire conjointement la page relative aux repeaters, les deux notions étant étroitement liées.

Définition

Les boucles permettent de restituer "à la chaîne" les données stockées grâce à un repeater.

Contexte

Une fois que le formulaire a permis de collecter un ensemble de données dans une liste, il faut pouvoir réutiliser ces données dans un document.

Par exemple, une fois que le formulaire a permis de collecter des données relatives aux enfants d'un couple en instance de divorce, alors il faut pouvoir réutiliser les informations relatives aux enfants dans un document.

Mise en place - exemple

Je souhaite que le document final affiche une liste dans cette forme :

  • Julien (9 ans)
  • Sylvie (12 ans)
  • Yves (3 ans)

Pour cela, dans la configuration du SmartDoc (onglets préfixés par “Doc …”), il suffit d’indiquer dans la colonne “options” l’attribut “loop” et lui donner la valeur de la variable de référence à répéter. Cet attribut peut s’appliquer sur une ligne simple ou directement sur un bloc. Puis, dans la colonne “contenu”, il faut utiliser la syntaxe suivante :

{ENFANTS.PRENOM} ({ENFANTS.AGE} ans)

En image :

Restitution grâce à une boucle (loop) des données collectées sur les enfants dans le formulaire

Attention, il est possible d’utiliser les sous-variables d’une liste (ici, par exemple, ENFANTS.PRENOM), uniquement à l’intérieur d’une boucle (loop).