Přidání prvku iterace

Namísto vytváření kopií sekcí kopírováním a vkládáním bloků šablony vytvořte v šabloně smyčky pomocí vlastnosti podmínka do while v prvku iterace.
Omezení: Ikona Nová funkce Prvek iterace je k dispozici pouze v šablonách verze 2.

Než začnete

Informace o této úloze

Iterace pracují s dotazy, které jsou použity přímo na ně nebo na jejich podřízené prvky, ve dvou fázích. Zaprvé, během generování dokumentů jsou tyto prvky zpracovány jednorázově. Zadruhé, jsou zpracovány podmínky použité na prvek iterace. Pokud jsou podmínky pravdivé, prvek iterace a jeho podřízené prvky jsou zpracovány znovu. Zpracování příslušných sekcí pokračuje, dokud podmínka neztratí na pravdivosti.

V první fázi je třeba, aby se data použitá v podmínce změnila tak, že počet kroků bude konečný. Právě díky této podmínce může zpracování sekcí skončit bez zacyklení. V níže uvedeném příkladě v kroku 5 je podmínka taková, že proměnná teamList není prázdná. Tato podmínka je tedy pravdivá, dokud pro proměnnou teamList existují položky dat. Až nebudou žádné další položky dat, podmínka bude nepravdivá a opakování skončí.

Chcete-li provést dotazy vícekrát, přidejte dovnitř kontejneru smyčky dynamický prvek konfigurace zdroje dat k vynucení více než jedné inicializace dotazů.

Postup

  1. Přidejte do editoru obsahu šablony prvek Ikona iterace Iterace.
    Poznámka: Prvky iterace nelze vkládat na stránky předlohy.
  2. Vyberte sekci šablony, jejíž kopii chcete vytvořit, a přetáhněte ji do prvku iterace.
  3. Vyberte prvek Iterace.
  4. V pohledu Vlastnosti vyberte kartu Specifické.
  5. U hodnoty podmínka do while klepněte na ikonu Konfigurace.
  6. Vyberte kartu Výraz skriptu. Skript nelze zadat na kartě Jednoduchá hodnota, protože by vytvořil nekonečnou smyčku.
  7. Vyberte proměnnou. Vytvoření smyčky s proměnnou zajistí, že se použije specifický počet opakování smyčky nebo se použije daný počet datových hodnot pomocí této proměnné.
  8. Zadejte skript.
  9. Klepněte na tlačítko OK.
  10. Uložte změny.

Příklad

Vytvoření seznamu členů týmu k použití:
  1. Vytvořte externí proměnnou s názvem teamList.
  2. Vytvořte externí proměnnou s názvem currentMember.
  3. Vytvořte prvek tabulky a použijte podmínku:
    1. Přidejte do editoru obsahu šablony prvek Ikona tabulky tabulky.
    2. Zadejte 1 sloupec a 2 řádky.
    3. Klepněte pravým tlačítkem myši na prvek tabulky a vyberte volbu Data > Upravit podmínku.
    4. Vyberte proměnnou teamList.
    5. Jako Levý operand vyberte proměnnou teamList.
    6. Pro operátor vyberte volbu nerovná se.
    7. Jako Pravý operand nezadávejte žádnou hodnotu.
    8. Klepněte na tlačítko Přidat. Výsledek skriptu: teamList != ""
    9. Klepněte na tlačítko OK.
  4. Do první buňky přidejte záhlaví sloupce:
    1. Přidejte do buňky Ikona textu textový prvek.
    2. Poklepáním na textový prvek otevřete editor obsahu.
    3. Zadejte název záhlaví Seznam členů týmu.
    4. Klepněte na tlačítko OK.
    5. V pohledu Vlastnosti vyberte kartu Písmo.
    6. Klepněte na vlastnost Tučné.
    7. Vyberte hodnotu True a klepněte na tlačítko OK.
  5. Přidejte prvek iterace:
    1. Přetáhněte prvek Ikona iterace iterace z pohledu Paleta a umístěte ho mezi řádky tabulky.
    2. Vyberte prvek Iterace.
    3. V pohledu Vlastnosti zadejte do vlastnosti podmínka do while tento skript: teamList != "".
    4. Přidejte do prvku iterace dva Ikona kontejneru kontejnerové prvky. První kontejner se použije k výpočtu prvního názvu ze seznamu, který se má použít v aktuálním řádku. Druhý kontejner se použije k ukončení smyčky, aby zbytečně nepokračovala.
    5. Přetáhněte druhý řádek a jeho obsah do prvku iterace a umístěte jej za kontejnerové prvky.
  6. Přiřaďte proměnnou prvnímu kontejnerovému prvku:
    1. Klepněte pravým tlačítkem myši na první kontejnerový prvek.
    2. Vyberte volbu Data > Upravit přiřazení.
    3. Klepněte na tlačítko Přidat.
    4. Vyberte proměnnou currentMember a klepněte na tlačítko OK.
    5. Vyberte kartu Výraz skriptu.
    6. Vyberte proměnnou teamList a zadejte skript:
      var pos = teamList.indexOf( ",");
      
      if ( pos >=0)
      {
         // získat první člen (do první čárky)
          teamList.substr( 0, pos);
      }
      else
      {
          // poslední člen
          teamList;
      }
    7. Klepněte na tlačítko OK a OK.
  7. Přiřaďte proměnnou druhému kontejnerovému prvku:
    1. Klepněte pravým tlačítkem myši na druhý kontejnerový prvek.
    2. Vyberte volbu Data > Upravit přiřazení.
    3. Klepněte na tlačítko Přidat.
    4. Vyberte proměnnou teamList a klepněte na tlačítko OK.
    5. Vyberte kartu Výraz skriptu.
    6. Vyberte proměnnou teamList a zadejte skript:
      var pos = teamList.indexOf( ",");
      
      if ( pos >=0 && pos < teamList.length)
      {
         // získat prvního autora (do první čárky)
          teamList.substr( pos + 1);
      }
      else
      {
          // poslední člen, odebrat
          ""
      }
  8. Přetáhněte proměnnou currentMember z pohledu Osnova do buňky v druhém řádku.
  9. Otestujte výstup.

Zpětná vazba