In XLSForms kann eine Sammlung von Fragen mehrmals wiederholt werden. Nachfolgend sind Beispiele für die Verwendung von Wiederholungen aufgeführt:
- Erfassen mehrerer Antworten auf die gleiche Frage in einem Survey
- Erfassen separater, kleinerer Sammlungen von Datensätzen, z. B. Name, Alter und Geschlecht jeder Person in einem Haushalt
- Erfassen mehrerer Kartenfragen in einem Survey

Wenn Sie einen Survey mit Wiederholungen veröffentlichen, wird jede Wiederholung als zugehörige Tabelle im Feature-Layer erstellt oder als zugehöriger Layer, wenn die Wiederholung eine Frage vom Typ "geopoint", "geotrace" oder "geoshape" enthält.
Verwenden von Wiederholungen
Um eine Sammlung von Fragen zu wiederholen und so mehrere Antworten zu erfassen, führen Sie auf der Registerkarte survey Ihres Arbeitsblattes die folgenden Schritte aus:
- Geben Sie in der Zeile, in der die Wiederholung beginnen soll, begin repeat in die Spalte type ein.
- Geben Sie in der Spalte name einen Namen für die Wiederholung an.
- Geben Sie in die Zeilen unterhalb dieses Eintrags die Fragen ein, die in die Wiederholung eingeschlossen werden sollen.
- Geben Sie unmittelbar nach den Fragen end repeat in die Spalte type ein.
Im Survey wird eine Sammlung von Fragen erstellt, die Sie den Survey-Ergebnissen wiederholt hinzufügen können. Standardmäßig können Sie die Fragen beliebig oft wiederholen. Es gibt keine Einschränkung für die Häufigkeit.
Punktpositionen aus der ersten Frage vom Typ "geopoint" in einer Wiederholung können auf jeder beliebigen Karte im Survey angezeigt werden. Weitere Informationen finden Sie unter Punkt-Überlagerungen auf Karten.
Aussehen
Wenn Sie das Aussehen einer Spalte einer Frage vom Typ "begin repeat" auf minimal festlegen, ist die Sammlung von Fragen beim Starten nicht sichtbar. Der Benutzer muss auf die Schaltfläche zum Hinzufügen klicken, um die Fragen in der Wiederholung anzuzeigen. Dies ist hilfreich, wenn wiederholte Fragen in einem Survey nicht ausgefüllt werden müssen. Dieses Aussehen wird in der Frage vom Typ "begin repeat" definiert.

Weist eine Wiederholung den Aussehentyp minimal und einen NULL-Wert für die Wiederholungsanzahl auf, sind die Wiederholungssteuerelemente und deren Beschriftung nicht sichtbar.
Wenn Sie das Aussehen einer Frage des vom Typ "begin repeat" auf compact festlegen, wird die Wiederholung nach dem Starten im ausgeblendeten Zustand angezeigt und kann vom Benutzer eingeblendet werden. Dies ist hilfreich bei großen Surveys, die der Benutzer nicht gut lesen und durch die er nur schwer navigieren kann. Dieses Aussehen wird in der Frage vom Typ "begin repeat" definiert.
Im Gegensatz zu anderen Aussehentypen können für eine Wiederholung "minimal" und "compact" gleichzeitig verwendet werden, indem das Aussehen auf minimal compact festgelegt wird. Dann werden die Fragen in einer Wiederholung sowohl eingeklappt (compact) als auch ausgeblendet (minimal) angezeigt.
Wenn Sie das Aussehen einer Frage vom Typ "begin repeat" auf tabular festlegen, werden die Fragen der Wiederholung im Tabellenformat dargestellt. Weitere Informationen finden Sie unter Tabellarische Wiederholungen.
Hinweis:
In Survey123 Connect können Sie auch die folgenden Aussehentypen in Surveys festlegen, die mit der mobilen Survey123-App oder der Survey123-Web-App verwendet werden:
- Wenn Sie den Wert der Spalte style im Arbeitsblatt settings auf pages und das Aussehen für jede Frage vom Typ "begin repeat" auf field-list setzen, wird jede wiederholbare Sammlung von Fragen auf einer separaten Seite des Survey angezeigt. Dieses Verhalten entspricht dem für eine Gruppe.
- Wenn Sie den Wert der Spalte style im Arbeitsblatt settings auf fixed-grid oder dynamic-grid setzen, können Wiederholungen im Survey so festgelegt werden, dass die enthaltenen Fragen in einem Gitter-Layout angezeigt werden. Dieses Verhalten entspricht dem für eine Gruppe.
Tabellarische Wiederholungen
Hinweis:
In diesem Abschnitt werden Funktionen beschrieben, die nur in Survey123 Studio und Survey123 Mobile verfügbar sind.
In Survey123 Connect, der mobilen Survey123-App und der Survey123-Web-App werden das Aussehen vom Typtabular und die damit verknüpften XLSForm-Parameter ignoriert.
Wenn Sie das Aussehen einer Frage vom Typ "begin repeat" auf tabular festlegen, werden die Fragen der Wiederholung im Tabellenformat dargestellt. In der tabellarischen Ansicht werden Datensätze in der Wiederholung als Zeilen und Fragen in der Wiederholung als Spalten dargestellt. In der tabellarischen Ansicht können Sie Daten direkt in den Zellen bearbeiten sowie Datensätze in der Wiederholung sortieren und darin navigieren.
In der folgenden Abbildung ist eine tabellarische Ansicht dargestellt.

Nähere Informationen zu den Beschriftungen des obigen Bildes:
- Tippen Sie bei jeder Zeile auf die Menüschaltfläche, um die Optionen In Formularansicht bearbeiten, In neuen Datensatz kopieren und Löschen aufzurufen.
- Das Symbol "Nur Lesen" zeigt an, dass eine Frage (Spalte) in der tabellarischen Ansicht nicht bearbeitet werden kann.
- Tippen Sie auf eine Spaltenüberschrift, um die tabellarische Ansicht in aufsteigender Reihenfolge zu sortieren, und führen Sie optional folgende Schritte aus:
- Tippen Sie ein zweites Mal auf eine Spaltenüberschrift, um in absteigender Reihenfolge zu sortieren.
- Tippen Sie ein drittes Mal auf eine Spaltenüberschrift, um die Sortierfunktion zu deaktivieren. (Dadurch wird die ursprüngliche Reihenfolge der Zeilen wiederhergestellt). Tippen Sie alternativ auf eine andere Spaltenüberschrift, um nach dieser Spalte zu sortieren.
- Tippen Sie auf eine Zelle, um ihren Wert zu ändern. Es können nur einige Fragetypen in der tabellarischen Ansicht bearbeitet werden.
- Tippen Sie in einer Zelle auf die Schaltfläche "Löschen", um den Wert daraus zu löschen.
Sie können auch einzelne Datensätze in der Formularansicht bearbeiten. Die Formularansicht stellt einzelne Wiederholungsdatensätze in einem separaten Survey-Formular mit allen verfügbaren Funktionen dar.
Das Aussehen vom Typ tabular kann in Verbindung mit den Aussehentypen minimal und compact verwendet werden.
Um mit tabellarischen Wiederholungen in Survey123 Studio zu beginnen, führen Sie die folgenden Schritte aus:
- Legen Sie das Aussehen für eine Frage vom Typ "begin repeat" auf tabular fest.
Die tabellarische Ansicht bleibt leer, bis Sie Fragen hinzufügen.
- Fügen Sie der tabellarischen Ansicht eine oder mehrere Fragen hinzu, indem Sie für jede Frage in der Spalte body::esri:style den Eintrag showInTabularView=true eingeben.
- Konfigurieren Sie die tabellarische Ansicht mit optionalen Parametern.
Hinzufügen von Fragen in der tabellarischen Ansicht
Sie können der tabellarischen Ansicht Fragen hinzufügen, indem Sie in der Spalte body::esri:style für Fragen in der Wiederholung den Eintrag showInTabularView=true eingeben. Sie können die folgenden Fragetypen in der tabellarischen Ansicht bearbeiten:
- text
- integer
- decimal
- date
- Zeit
- dateTime
Alle anderen Fragetypen werden in der tabellarischen Ansicht als schreibgeschützte Spalten angezeigt.
Vorsicht:
Bitte beachten Sie Folgendes, wenn Sie Fragen zur tabellarischen Ansicht hinzufügen:
- Fragen in der Wiederholung, die einen Ausdruck (einschließlich yes) in der Spalte readonly enthalten, können in der tabellarischen Ansicht nicht bearbeitet werden.
- Fragen in der Wiederholung, die einen Ausdruck in der Spalte body::esri:visible enthalten oder solche, die vom Aussehentyp hidden sind, werden in der tabellarischen Ansicht nicht angezeigt.
- Fragen in der Wiederholung, die einen Ausdruck in der Spalte relevant enthalten, werden in der tabellarischen Ansicht nicht angezeigt.
- Fragen in der Wiederholung, die einen Ausdruck (einschließlich yes) in der Spalte required oder einen Ausdruck in der Spalte constraint enthalten, werden in der tabellarischen Ansicht angezeigt. Wenn eine oder mehrere Bedingungen vom Typ "required" oder "constraint" nicht erfüllt sind, wird oberhalb der tabellarischen Ansicht eine allgemeine Warnung angezeigt, wobei neben jedem Datensatz (jeder Zeile), der Fehler enthält, ein Warnsymbol angezeigt wird. Sie können den Survey erst übermitteln, wenn diese Probleme behoben sind. Sie können Datensätze in der Formularansicht bearbeiten, um die Warnmeldungen bezüglich der Bedingungen "constraint" und "required" für einzelne Fragen anzuzeigen. Wenn die Wiederholung Fehler enthält, steht die Option In Formularansicht bearbeiten zur Verfügung, selbst wenn der Parameter editInFormView in der Spalte body::esri:style auf false festgelegt ist.
Optionen für die tabellarische Ansicht
Sie können Optionen in Bezug auf die Datensätze (Zeilen) in der tabellarischen Ansicht konfigurieren, indem Sie Parameter in der Spalte body::esri:style für eine Frage vom Typ "begin repeat" angeben. Diese optionalen Parameter werden in der folgenden Tabelle beschrieben. Sie können mehrere Parameter hinzufügen, indem Sie diese durch Leerzeichen voneinander trennen. Beispiel:
addRecordMode=form copyToNewRecord=false
Wenn Sie das Aussehen einer Frage vom Typ "begin repeat" auf tabular festlegen und in der Spalte body::esri:style für diese Frage keine Parameter angeben, stehen in der tabellarischen Ansicht standardmäßig die Optionen In Formularansicht bearbeiten, In neuen Datensatz kopieren und Löschen zur Verfügung.
| Parameter | Beschreibung |
|---|---|
| addRecordMode | Geben Sie den Modus für die Schaltfläche Datensatz hinzufügen und die Option In neuen Datensatz kopieren in der tabellarischen Ansicht an. Die Standardeinstellung ist row. Wenn der Wert row ist, wird der neue Datensatz an die tabellarische Ansicht angehängt. Wenn der Wert form ist, wird der neue Datensatz in der Formularansicht geöffnet. Werte: row | form Beispiel: |
| editInFormView | Die Option In Formularansicht bearbeiten in der tabellarischen Ansicht ein- oder ausblenden. Die Standardeinstellung ist true. Hinweis:Wenn die Wiederholung Fehler enthält, steht die Option In Formularansicht bearbeiten zur Verfügung, selbst wenn der Parameter editInFormView auf false festgelegt ist. Werte: true | false Beispiel: |
| copyToNewRecord | Die Option In neuen Datensatz kopieren in der tabellarischen Ansicht ein- oder ausblenden. Mit dieser Option können Benutzer einen Datensatz in der Wiederholung duplizieren. Die Standardeinstellung ist true. Der Parameter addRecordMode legt fest, wie der duplizierte Datensatz hinzugefügt wird. Werte: true | false Beispiel: |
| editInTabularView | Die Bearbeitungsfunktion in der tabellarischen Ansicht aktivieren oder deaktivieren. Die Standardeinstellung ist true. Wenn der Wert false ist, sind alle Zellen in der tabellarischen Ansicht schreibgeschützt. Werte: true | false Beispiel: |
Einschränkungen bei der Verwendung von tabellarischen Wiederholungen
Es gelten die folgenden Einschränkungen für tabellarische Wiederholungen:
- Das Aussehen tabular wird bei geschachtelten Wiederholungen nicht unterstützt.
- Die Option In neuen Datensatz kopieren kopiert weder Anlagen noch geschachtelte Wiederholungen in den neuen Datensatz. Dies entspricht der Experience beim Kopieren von Survey-Datensätzen aus dem Ordner Gesendet oder dem Posteingang in einen neuen Datensatz.
- Wenn die tabellarische Ansicht sortiert ist, wird empfohlen, keine Werte in der Spalte zu bearbeiten, auf die die Sortierung angewendet wurde, da sich die Sortierung bei jedem Tastendruck sofort aktualisiert.
- Befindet sich eine tabellarische Wiederholung innerhalb einer Gruppe, für die ein Ausdruck vom Typ "relevant" vorliegt, ist ihre tabellarische Ansicht leer, sobald die Gruppe als relevant markiert wird.
- In Sprachen, die von rechts nach links geschrieben werden (Right-to-Left-Sprachen), kehrt sich die Reihenfolge der Spalten in der tabellarischen Ansicht nicht um, und die Spaltenüberschriften sind nicht immer rechtsbündig ausgerichtet.
Angeben der Anzahl von Wiederholungsdatensätzen
Hinweis:
In diesem Abschnitt werden Funktionen beschrieben, die nur in Survey123 Connect und der mobilen Survey123-App verfügbar sind. Diese Funktionen sind nicht in Survey123 Studio oder Survey123 Mobile verfügbar.
Um die Anzahl der Wiederholungsdatensätze in einer Wiederholung zu definieren, legen Sie eine Wiederholungsanzahl fest, indem Sie die folgenden Schritte ausführen:
- Geben Sie in der Zeile, in der die Wiederholung beginnen soll, begin repeat in die Spalte type der Registerkarte survey ein.
- Geben Sie in der Spalte repeat_count einen numerischen Wert für die Anzahl der Wiederholungen an.
Optional können Sie auch einen Fragennamen oder eine Berechnung angeben, die einen numerischen Wert zurückgibt.
- Geben Sie in der Spalte name einen Namen für die Wiederholung an.
- Geben Sie in die Zeilen unterhalb dieses Eintrags die Fragen ein, die in die Wiederholung eingeschlossen werden sollen.
- Geben Sie in der letzten Zeile end repeat in die Spalte type ein.
Wenn ein Benutzer den Survey öffnet, wurde die in der Spalte repeat_count festgelegte Anzahl der Wiederholungen bereits erstellt. Benutzer können weder Wiederholungen erstellen noch Wiederholungen löschen.
Benutzer müssen vor dem Übermitteln der Survey-Antwort zu allen Wiederholungsdatensätzen navigieren, die durch den Wert repeat_count definiert sind. Andernfalls werden nicht alle Wiederholungsdatensätze übermittelt, da Ausdrücke und Standardeinstellungen erst dann auf Wiederholungen angewendet werden, wenn Benutzer zu dem Datensatz navigieren. Um sicherzustellen, dass alle Wiederholungen gesendet werden, können Sie Fragen in den Wiederholungen als erforderlich definieren. Fragen in Wiederholungen, auf die eine Anweisung vom Typ "relevant" oder "conditionally required" angewendet wird, werden bei der Übermittlung nicht ausgewertet.
Hinweis:
Das Verhalten einer Wiederholung mit einer sich ändernden Wiederholungsanzahl hängt davon ab, ob der Benutzer eine Survey-Antwort erstellt oder eine bereits gesendete Antwort bearbeitet. Im Detail gilt dabei Folgendes:
- Wenn eine Survey-Antwort erstellt wird, wird in der mobilen App eine Schaltfläche oberhalb der Wiederholung angezeigt, um alle Datensätze, die Daten enthalten und die neue Wiederholungszahl übersteigen, zu löschen; leere Datensätze werden automatisch gelöscht. Unabhängig davon, ob auf diese Schaltfläche gedrückt wird, bewirkt das Übermitteln der Survey-Antwort das Übermitteln aller Datensätze mit Ausnahme leerer Datensätze.
- Wird eine vorhandene Survey-Antwort bearbeitet, wird in der mobilen App oberhalb der Wiederholung die Meldung angezeigt, dass die Anzahl der Datensätze nicht mit der Anzahl der Wiederholungen übereinstimmt. Neue Wiederholungsdatensätze können nur hinzugefügt werden, wenn allowAdds in der Spalte bind::esri:parameters auf true festgelegt wurde. Datensätze, die die Anzahl der Wiederholungen überschreiten, können nicht gelöscht werden, da die mobile App das Löschen vorhandener Wiederholungsdatensätze nicht unterstützt. Bearbeitete Survey-Antworten können auch dann übermittelt werden, wenn die Anzahl der Wiederholungsdatensätze nicht mit der Anzahl der Wiederholungen übereinstimmt.
Aggregatfunktionen
Hinweis:
In diesem Abschnitt werden Funktionen beschrieben, die nur in Survey123 Connect und der mobilen Survey123-App verfügbar sind. Diese Funktionen sind nicht in Survey123 Studio oder Survey123 Mobile verfügbar.
Sie können Aggregationsfunktionen verwenden, um aus Antworten von Wiederholungen abgeleitete Werte zurückzugeben. Hierzu wird eine Frage innerhalb einer Wiederholung durch eine Frage außerhalb der Wiederholung referenziert. Die folgende Formel zählt beispielsweise die Antworten auf eine einzelne Frage in Wiederholungen:
count(${repeated_question})
Zum Aggregieren von Antworten können Sie die folgenden Funktionen verwenden:
- count
- sum
- min
- max
- join
Diese Funktionen beziehen sich nur auf die aktuelle Survey-Antwort. Andere Datensätze im Feature-Layer werden nicht berücksichtigt. Sie können auch Fragen mit sum und count in der Wiederholung einschließen. Die Werte sum und count werden für jeden neuen Datensatz berechnet, der der Wiederholung hinzugefügt wird. Die Berechnungen für vorherige Einträge in der Wiederholung werden jedoch nicht automatisch aktualisiert. Diese Berechnungen können Sie mit der Schaltfläche Aktualisieren neben der Frage manuell aktualisieren. Die Verwendung von min und max wird nur außerhalb der Wiederholung unterstützt.
Hinweis:
Bei Verwendung in der mobilen Survey123-App können die Funktionen sum, count und join innerhalb oder außerhalb der Wiederholung platziert werden. Wenn sum, count und join in der Survey123-Web-App verwendet werden sollen, müssen sie außerhalb der Wiederholung platziert werden. Ein außerhalb der Wiederholung platzierter sum-, count- oder join-Wert kann in einer Berechnung innerhalb der Wiederholung referenziert werden.
Mithilfe der Funktion join können Sie Fragen verketten, die eine Zeichenfolge zurückgeben. Sie können auch die Funktion sum verwenden, um Fragen vom Typ "geopoint" in der Wiederholung als Frage vom Typ "geopoint", "geotrace" oder "geoshape" außerhalb der Wiederholung zu verbinden.
Weitere Informationen zur Verwendung dieser Funktionen finden Sie unter Formeln.
Zurückgeben des Index eines Wiederholungsdatensatzes
Mit der Funktion position(..) können eine ganze Zahl zurückgeben lassen, die den Index des Wiederholungsdatensatzes in einer Wiederholung angibt. Der erste Datensatz in einer Wiederholung gibt 1 zurück, der zweite 2 usw. Im folgenden Beispiel wird die Funktion position(..) in einer ausgeblendeten Frage vom Typ "integer" verwendet:

Vorsicht:
Die Funktion position(..) gibt immer 0 in Survey123 Mobile und der mobilen Survey123-App oder 1 in der Survey123-Web-App zurück, wenn sie außerhalb einer Wiederholung oder in einer Gruppe, die sich innerhalb einer Wiederholung befindet, verwendet wird.
Sie können die Funktion position(..) auch in einem Ausdruck verwenden. Im folgenden Beispiel verwendet die Funktion selected-at() position(..), um die Auswahlmöglichkeit, die in der Frage vom Typ "select_multiple" ausgewählt wurde, an der gleichen Position wie den aktuellen Wiederholungsdatensatz zurückzugeben und die Auswahlmöglichkeit in der Wiederholung als Hinweis anzuzeigen. Die Funktion selected-at() beginnt mit dem Zählen von Auswahlmöglichkeiten bei 0, sodass 1 von position(..) subtrahiert wird, um sicherzustellen, dass die Indizes übereinstimmen.
selected-at(${issues}, position(..)-1)

Sie können die Funktion position(..) in Kombination mit indexed-repeat() verwenden, um Fragenwerte aus bestimmten Wiederholungsdatensätzen zu extrahieren.
Verwenden von Werten aus indizierten Wiederholungen
Hinweis:
In diesem Abschnitt werden Funktionen beschrieben, die nur in Survey123 Connect und der mobilen Survey123-App verfügbar sind. Diese Funktionen sind nicht in Survey123 Studio oder Survey123 Mobile verfügbar.
Sie können die Funktion indexed-repeat() verwenden, um den Wert aus einer bestimmten Frage in einem Wiederholungsdatensatz zurückzugeben. Hierzu sind der Name der Frage, der Name der Wiederholung und die Indexnummer der Wiederholung in dieser Reihenfolge erforderlich. Das folgende Beispiel gibt die Antwort auf die Frageroom_no für den dritten Datensatz in der Wiederholung floor zurück:
indexed-repeat(${room_no}, ${floor}, 3)
Sie können die Funktion indexed-repeat() für Wiederholungen innerhalb von Wiederholungen verwenden. Wird sie auf diese Art und Weise eingesetzt, empfängt sie nur Werte, die über die aktuell sichtbare übergeordnete Wiederholung zugänglich sind.
Vorsicht:
Die Funktion indexed-repeat() kann nicht in der Wiederholung verwendet werden, die sie referenziert, da es sonst zu einem Zirkelbezug kommt. Zum Beispiel kann der folgende Ausdruck nicht für eine Berechnung in der Wiederholung defects verwendet werden:
indexed-repeat(${defect_type}, ${defects}, 3)
Bekannte Einschränkungen
In Bezug auf die Verwendung von Wiederholungen in Survey123 bestehen die folgenden bekannten Einschränkungen und unerwarteten Verhaltensweisen:
- Wenn ein Survey mehrere Wiederholungen enthält und eine davon eine Frage vom Typ "geopoint", "geotrace" oder "geoshape" aufweist, wird die Benennung der Beziehung möglicherweise falsch veröffentlicht.
- Geschachtelte Wiederholungen unterstützen nur Eins-zu-Viele-Beziehungen. Zudem darf es zu jedem Child-Element nur ein Parent-Element geben.
- Durch geschachtelte Wiederholungen mit einem Ausdruck in der Spalte relevant und einem Ausdruck in der Spalte repeat_count werden alle vorhandenen gespeicherten Daten im ersten Wiederholungsdatensatz gelöscht. Dies können Sie verhindern, indem Sie den relevanten Ausdruck in den Ausdruck repeat_count einbinden, sodass keine Wiederholungsdatensätze erstellt werden, wenn die Wiederholung nicht relevant ist.
- Das Bearbeiten einzelner Antworten in der Survey123-Web-Appoder auf der Survey123-Website wird für Surveys mit geschachtelten Wiederholungen nicht unterstützt.