Ajout d'un élément d'itération

Au lieu de copier et coller des blocs de votre canevas afin de dupliquer les sections, utilisez la propriété Condition do while dans l'élément Itération pour créer des boucles dans votre canevas.
Restriction : icône Nouvelle fonction L'élément Itération n'est disponible que dans les canevas version 2.

Avant de commencer

Pourquoi et quand exécuter cette tâche

Les itérations fonctionnent avec des requêtes qui leur sont appliquées ou qui son appliquées à leurs éléments enfant en deux étapes. Tout d'abord, lors de la génération de documents, ces éléments sont traités une première fois. Ensuite, les conditions appliquées à l'élément Itération sont traitées. Si les conditions sont vérifiées, l'élément Itération et ses éléments sont à nouveau traités. Les sections continuent d'être traitées jusqu'à ce que la condition ne soit plus vérifiée.

Dans la première étape, les données utilisées dans la condition doivent changer pour qu'il existe un nombre fini d'étapes. Cette condition permet au traitement des sections de prendre fin et de ne pas boucler. A l'étape 5 de l'exemple ci-dessous, la condition est la suivante : la variable teamList ne doit pas être vide. Par conséquent la condition est vérifiée tant qu'il existe des entrées de données pour la variable teamList. Lorsqu'il n'y a plus d'entrées de données, la condition est false et la répétition se termine.

Pour que les requêtes soient exécutées plusieurs fois, ajoutez un élément de configuration de source de données dynamique dans le conteneur de boucle pour forcer les requêtes à être initialisées plusieurs fois.

Procédure

  1. Dans la vue Palette, sélectionnez un élément icône Itération Itération et faites-le glisser vers l'éditeur de contenu de canevas.
    Remarque : Vous ne pouvez pas placer d'éléments Itération dans les pages originales.
  2. Sélectionnez la section du canevas à dupliquer et faites-la glisser dans un élément Itération.
  3. Sélectionnez l'élément Itération.
  4. Dans la vue Propriétés, sélectionnez l'onglet Spécifique.
  5. Dans la valeur Condition Do while, cliquez sur l'icône Configuration.
  6. Sélectionnez l'onglet Expression de script. Vous ne pouvez pas entrer le script dans l'onglet Valeur simple car il crée une boucle infinie.
  7. Sélectionnez une variable. La création d'une boucle avec une variable garantit que cette boucle soit appliquée un certain nombre de fois ou lorsque de nombreuses valeurs de données sont appliquées à l'aide de cette variable.
  8. Entrez le script.
  9. Cliquez sur OK.
  10. Sauvegardez les modifications.

Exemple

Création d'une liste de membres d'équipe à utiliser :
  1. Créez une variable externe intitulée teamList.
  2. Créez une variable externe intitulée currentMember.
  3. Créez un élément de table et appliquez une condition :
    1. Ajoutez un élément Table icône Table à l'éditeur de contenu de canevas.
    2. Entrez 1 colonne et 2 lignes.
    3. Cliquez sur l'élément Table à l'aide du bouton droit de la souris et sélectionnez Données > Editer une condition.
    4. Sélectionnez la variable teamList.
    5. Pour l'opérande de gauche, sélectionnez la variable teamList.
    6. Pour l'opérateur, sélectionnez Différent de.
    7. Pour l'opérande de droite, n'entrez pas de valeur.
    8. Cliquez sur Ajouter. Le résultat du script est le suivant : teamList != ""
    9. Cliquez sur OK.
  4. Dans la première cellule, ajoutez un en-tête de colonne :
    1. Ajoutez un élément Texte icône Texte à la cellule.
    2. Cliquez deux fois sur l'élément Texte pour ouvrir l'éditeur de contenu.
    3. Entrez un nom d'en-tête tel que Liste de membres d'équipe.
    4. Cliquez sur OK.
    5. Dans la vue Propriétés, sélectionnez l'onglet Police.
    6. Cliquez sur la propriété Gras.
    7. Sélectionnez True et cliquez sur OK.
  5. Ajoutez l'élément Itération :
    1. Faites glisser l'élément Itération icône Itération de la vue Palette entre les lignes de la table.
    2. Sélectionnez l'élément Itération.
    3. Dans la vue Propriétés, entrez ce script pour la propriété Condition do while : teamList != ""
    4. Ajoutez deux éléments Conteneur icône Conteneur dans l'élément Itération. Le premier conteneur est utilisé pour calculer le premier nom de la liste à utiliser dans la ligne en cours. Le deuxième conteneur est utilisé pour mettre fin à la boucle de sorte qu'elle ne soit pas exécutée inutilement.
    5. Faites glisser la deuxième ligne et son contenu dans l'élément Itération et placez-ce dernier après les éléments de conteneur.
  6. Affectez une variable au premier élément de conteneur :
    1. Cliquez sur le premier élément de conteneur à l'aide du bouton droit de la souris.
    2. Sélectionnez Données > Modifier les affectations
    3. Cliquez sur Ajouter.
    4. Sélectionnez la variable currentMember et cliquez sur OK.
    5. Sélectionnez l'onglet Expression de script.
    6. Sélectionnez la variable teamList et entrez le script :
      var pos = teamList.indexOf( ",");
      
      if ( pos >=0)
      {
         // obtenir le premier membre (jusqu'à la première virgule)
          teamList.substr( 0, pos);
      }
      else
      {
          // dernier membre
          teamList;
      }
    7. Cliquez sur OK et OK.
  7. Affectez une variable au deuxième élément de conteneur :
    1. Cliquez sur le deuxième élément de conteneur à l'aide du bouton droit de la souris.
    2. Sélectionnez Données > Modifier les affectations
    3. Cliquez sur Ajouter.
    4. Sélectionnez la variable teamList et cliquez sur OK.
    5. Sélectionnez l'onglet Expression de script.
    6. Sélectionnez la variable teamList et entrez le script :
      var pos = teamList.indexOf( ",");
      
      if ( pos >=0 && pos < teamList.length)
      {
         // obtenir le premier créateur (jusqu'à la première virgule)
          teamList.substr( pos + 1);
      }
      else
      {
          // dernier membre ; supprimez-le
          ""
      }
  8. Faites glisser la variable currentMember de la vue Structure dans la cellule de la deuxième ligne.
  9. Testez la sortie.

Retour d'informations