Dodawanie elementu iteracji

Zamiast kopiowania i wklejania bloków szablonu podczas duplikowania sekcji, do utworzenia pętli w szablonie należy użyć właściwości Warunek „do while” w elemencie iteracji.
Ograniczenie: Ikona nowego składnika Element iteracji jest dostępny tylko w szablonach w wersji 2.

Zanim rozpoczniesz

O tym zadaniu

Iteracje działają z zapytaniami zastosowanymi do nich lub ich elementów potomnych w dwóch etapach. Najpierw podczas generowania dokumentu te elementy są przetwarzane jeden raz. Następnie przetwarzane są warunki zastosowane do elementu iteracji. Jeśli warunki są spełnione, element iteracji i jego elementy potomne są ponownie przetwarzane. Sekcje są dalej przetwarzane do momentu, aż warunek nie będzie już spełniony.

W pierwszym etapie dane używane w warunku muszą się zmieniać, aby istniała ograniczona liczba kroków. Ten warunek powoduje zakończenie przetwarzania sekcji i zaprzestanie kontynuowania pętli. W kroku 5 poniższego przykładu warunek jest taki, że zmienna teamList nie jest pusta. Warunek jest spełniony, dopóki istnieją pozycje danych dla zmiennej teamList. Gdy nie ma już pozycji danych, warunek nie jest spełniony i następuje zakończenie powtarzania.

Aby zapytania były wykonywane wiele razy, w kontenerze pętli należy dodać dynamiczny element Konfiguracja źródła danych, aby wymusić inicjowanie zapytań więcej niż jeden raz.

Procedura

  1. Dodaj do edytora treści szablonu element Ikona Iteracja Iteracja.
    Uwaga: Elementów iteracji nie można umieszczać na stronach wzorcowych.
  2. Wybierz sekcję szablonu do zduplikowania i przeciągnij ją do elementu iteracji.
  3. Wybierz element Iteracja.
  4. W widoku Właściwości kliknij kartę Konkretne.
  5. Dla wartości Warunek „do while” kliknij ikonę Konfiguracja.
  6. Wybierz kartę Wyrażenie skryptu. Nie można wprowadzić skryptu na karcie Wartość prosta, ponieważ spowoduje to utworzenie pętli nieskończonej.
  7. Wybierz zmienną. Utworzenie pętli ze zmienną zapewnia, że pętla zostanie zastosowana konkretną liczbę razy lub że dzięki tej zmiennej zostanie zastosowana określona liczba wartości danych.
  8. Wprowadź skrypt.
  9. Kliknij przycisk OK.
  10. Zapisz zmiany.

Przykład

Tworzenie listy dostępnych do pracy członków zespołu:
  1. Utwórz zmienną zewnętrzną o nazwie teamList.
  2. Utwórz zmienną zewnętrzną o nazwie currentMember.
  3. Utwórz element tabeli i zastosuj warunek:
    1. Do edytora treści szablonu dodaj element Ikona Tabela Tabela.
    2. Wprowadź 1 kolumnę i 2 wiersze.
    3. Kliknij prawym przyciskiem myszy element Tabela i wybierz opcję Dane > Edytuj warunek.
    4. Wybierz zmienną teamList.
    5. Dla lewego operandu wybierz zmienną teamList.
    6. Dla operatora wybierz wartość Nie jest równe.
    7. Dla prawego operandu nie wprowadzaj wartości.
    8. Kliknij przycisk Dodaj. Wynik skryptu jest następujący: teamList != ""
    9. Kliknij przycisk OK.
  4. W pierwszej komórce wpisz nagłówek kolumny:
    1. Dodaj do komórki element Ikona Tekst Tekst.
    2. Kliknij dwukrotnie element Tekst, aby otworzyć edytor treści.
    3. Wpisz nazwę nagłówka: Lista członków zespołu.
    4. Kliknij przycisk OK.
    5. W widoku Właściwości kliknij kartę Czcionka.
    6. Kliknij właściwość Pogrubienie.
    7. Wybierz wartość Prawda i kliknij przycisk OK.
  5. Dodaj element iteracji:
    1. Przeciągnij element iteracji Ikona Iteracja z widoku Paleta i umieść go między wierszami tabeli.
    2. Wybierz element Iteracja.
    3. W widoku Właściwości wprowadź następujący skrypt do właściwości Warunek „do while”: teamList != ""
    4. Dodaj w elemencie iteracji dwa elementy kontenera Ikona Kontener. Pierwszy kontener służy do obliczania pierwszej nazwy z listy, która ma zostać użyta w bieżącym wierszu. Drugi kontener służy do zakończenia pętli, aby nie kontynuować niepotrzebnego przetwarzania.
    5. Przeciągnij drugi wiersz i jego treść do elementu iteracji i umieść go za elementami kontenera.
  6. Przypisz zmienną do pierwszego elementu kontenera:
    1. Kliknij prawym przyciskiem myszy pierwszy element kontenera.
    2. Wybierz opcję Dane > Edytuj przypisania.
    3. Kliknij przycisk Dodaj.
    4. Wybierz zmienną currentMember i kliknij przycisk OK.
    5. Wybierz kartę Wyrażenie skryptu.
    6. Wybierz zmienną teamList i wprowadź skrypt:
      var pos = teamList.indexOf( ",");
      
      if ( pos >=0)
      {
         // pobranie pierwszego członka zespołu (do pierwszego przecinka)
          teamList.substr( 0, pos);
      }
      else
      {
          // ostatni członek zespołu
          teamList;
      }
    7. Kliknij przycisk OK, a następnie kolejny przycisk OK.
  7. Przypisz zmienną do drugiego elementu kontenera:
    1. Kliknij prawym przyciskiem myszy drugi element kontenera.
    2. Wybierz opcję Dane > Edytuj przypisania.
    3. Kliknij przycisk Dodaj.
    4. Wybierz zmienną teamList i kliknij przycisk OK.
    5. Wybierz kartę Wyrażenie skryptu.
    6. Wybierz zmienną teamList i wprowadź skrypt:
      var pos = teamList.indexOf( ",");
      
      if ( pos >=0 && pos < teamList.length)
      {
         // pobranie pierwszego autora (do pierwszego przecinka)
          teamList.substr( pos + 1);
      }
      else
      {
          // ostatni członek zespołu - do usunięcia
          ""
      }
  8. Przeciągnij zmienną currentMember z widoku Schemat do komórki w drugim wierszu.
  9. Przetestuj dane wyjściowe.

Opinia