XLSForm to otwarty standard, który upraszcza proces tworzenia formularzy. Tworzenie treści odbywa się w czytelnym formacie przy użyciu arkusza kalkulacyjnego. Informacje o standardzie XLSForm można znaleźć w witrynie https://xlsform.org/. Aplikacja Survey123 obsługuje większość (ale nie wszystkie) funkcji standardu XLSForm.
Istnieje wiele programów służących do tworzenia arkuszy kalkulacyjnych zgodnych ze specyfikacją XLSForm. Program Microsoft Excel jest najczęściej używany, ale dostępne są też inne opcje, takie jak Kingsoft Spreadsheets, Google Sheets lub OpenOffice Calc. Istnieją także internetowe kreatory formularzy XForm umożliwiające eksportowanie arkuszy kalkulacyjnych XLSForm, które mogą być następnie używane w aplikacji ArcGIS Survey123.
Aby ułatwić tworzenie formularzy, aplikacja ArcGIS Survey123 zawiera narzędzie komputerowe Survey123 Connect, które współpracuje z narzędziem do tworzenia formularzy XLSForm podczas tworzenia plików XLS. Aplikacja Survey123 Connect umożliwia wyświetlanie podglądu plików XLSForm podczas ich tworzenia lub edytowania, publikowanie formularzy w usłudze ArcGIS Online i oprogramowaniu ArcGIS Enterprise oraz tworzenie warstw obiektowych na podstawie specyfikacji formularza służącego do zbierania danych. Aplikacja ArcGIS Survey123 Connect jest dostępna dla systemu Windows.
Po opublikowaniu formularzy w systemie ArcGIS można użyć witryny Survey123 do udostępnienia formularzy członkom instytucji ArcGIS. Można także analizować mapy i tabele pod kątem danych zgromadzonych w aplikacji terenowej Survey123, jak również eksportować wyniki ankiety.
Na potrzeby tego tematu przyjmijmy, że do tworzenia formularzy używane są aplikacja ArcGIS Survey123 Connect i program Microsoft Excel.
Każdy skoroszyt programu Excel zawiera zwykle dwa arkusze: survey (ankieta) i choices (możliwości wyboru). Trzeci arkusz o nazwie settings (ustawienia) także został opisany poniżej. Arkusze zawierają zestaw kolumn obowiązkowych, które są wymagane do działania formularza. Dodatkowo każdy arkusz zawiera zestaw kolumn opcjonalnych, które zapewniają dodatkową kontrolę nad zachowaniem każdej pozycji w formularzu. Dla każdej pozycji wszystkie kolumny obowiązkowe muszą zawierać wartości, a kolumny opcjonalne mogą być puste. Kolumny można dodawać do skoroszytu programu Excel w dowolnej kolejności, niezależnie od tego, czy są to kolumny obowiązkowe, czy opcjonalne. Można pominąć opcjonalne kolumny i pozostawić dowolną liczbę pustych wierszy. Wszystkie opcje formatowania pliku .xls są ignorowane, zatem można używać linii podziału, cieniowania i innych opcji formatowania czcionek, które mogą zwiększyć czytelność formularza.
Arkusz ankiety
Arkusz nadaje formularzowi ogólną strukturę. Zawiera on pełną listę pytań i informacje o tym, jak będą one wyglądać w formularzu. Każdy wiersz reprezentuje zwykle jedno pytanie. Poniżej opisano więcej funkcji, które można dodać do formularza, aby ułatwić pracę użytkownikom.
Arkusz ankiety zawiera trzy kolumny obowiązkowe: type (typ), name (nazwa) oraz label (etykieta) albo hint (wskazówka).
- W kolumnie type (typ) podawany jest typ dodawanego pytania XLSForm. Istnieje dobrze zdefiniowana lista typów pytań, które można umieścić w tej kolumnie.
- W kolumnie name (nazwa) ustalana jest nazwa pola w warstwie obiektowej, w której będą przechowywane odpowiedzi na dane pytanie. W tej kolumnie nie jest dozwolone używanie spacji i znaków specjalnych. Nazwy muszą być unikalne dla wszystkich pytań w każdej warstwie.
- Kolumny label (etykieta) i hint (wskazówka) zawierają tekst pytań. Ten tekst będzie widoczny w formularzu. Pytanie musi zawierać co najmniej jedną etykietę lub wskazówkę. Podanie etykiety jest zalecane, gdyż pozwala uniknąć komunikatów ostrzegawczych. W tych kolumnach można używać spacji i znaków specjalnych. Alternatywnie można użyć kolumn, w których przechowywane są tłumaczenia. W etykietach i wskazówkach obsługiwany jest również kod HTML w ograniczonym zakresie, a także zmienne, które zostaną w ankiecie zastąpione odpowiedzią udzieloną na inne pytanie. Więcej informacji można znaleźć w temacie Uwagi.
Informacje ogólne o kolumnach arkusza ankiety można znaleźć w sekcji Kolumny arkusza ankiety.
Arkusz choices (możliwości wyboru)
W tym arkuszu podawane są możliwe do wybrania odpowiedzi na pytania z wieloma możliwościami odpowiedzi. Każdy wiersz reprezentuje jedną z możliwych odpowiedzi. Możliwe do wybrania odpowiedzi o tej samej nazwie listy są uważane za część powiązanego zestawu odpowiedzi i są wyświetlane razem w pytaniu. Dzięki temu zestaw możliwości wyboru może być ponownie wykorzystywany w wielu pytaniach (na przykład pytania tak lub nie).
Arkusz możliwości wyboru zawiera trzy kolumny obowiązkowe: list name (nazwa listy), name (nazwa) i label (etykieta).
- W kolumnie list name (nazwa listy) można grupować zestaw powiązanych możliwych do wybrania odpowiedzi. Możliwości wyboru o tej samej nazwie listy są prezentowane jako zestaw odpowiedzi na pytanie.
- W kolumnie name (nazwa) podawana jest wartość, która jest utrwalana w systemie ArcGIS. Wartości w kolumnie nazwy nie mogą zawierać znaków specjalnych. Nie zaleca się używać zduplikowanych nazw wyborów na liście wyboru. Więcej informacji na temat zduplikowanych nazw wyborów zawiera sekcja Pytania z wieloma możliwościami odpowiedzi.
- Możliwa do wybrania odpowiedź jest wyświetlana w kolumnie label (etykieta) dokładnie w takiej formie, w jakiej będzie wyświetlana w formularzu. Alternatywnie można użyć kolumn, w których przechowywane są tłumaczenia etykiet.
Podczas tworzenia formularzy w programie Excel składnia musi być stosowana dokładnie. Jeśli zamiast wartości choices zostanie użyta wartość Choices lub choice, formularz nie będzie działał.
Arkusz settings (ustawienia)
Arkusz settings (ustawienia) jest opcjonalny, jednak umożliwia on dalsze dostosowanie formularza. Dostępne możliwości dostosowywania obejmują m.in. tytuł, który jest wyświetlany podczas edytowania formularza, nazwę instancji w celu jednoznacznego zidentyfikowania każdego ukończonego formularza oraz unikalny identyfikator wersji ankiety. Więcej informacji można znaleźć w sekcji Ustawienia.
Dodatkowe arkusze
Szablony aplikacji Survey123 obejmują arkusze zawierające właściwości, operatory i funkcje, których można używać w formularzu. Arkusze te są również używane do zapełniania list rozwijanych i innych reguł weryfikacji danych w ankiecie oraz arkuszach ustawień. Aby zapewnić zgodne z oczekiwaniami działanie weryfikacji danych, zaleca się nie zmieniać zawartości dodatkowych arkuszy.
Typy pytań
W specyfikacji XLSForm obsługiwanych jest wiele typów pytań. Aby na przykład pobrać nazwę i lokalizację sklepu, napisz:
W poniższej tabeli podano pytania, które można wprowadzać w kolumnie type (typ) formularza XLSForm, informacje o danych wejściowych akceptowanych przez dane pytania i o typach pól, które są tworzone dla poszczególnych pytań w powiązanej warstwie obiektowej ArcGIS podczas publikowania formularza. Autor ankiety może zmienić typ pola wielu z tych typów pytań. Więcej informacji o typach pól można znaleźć w sekcji Niestandardowe kolumny Esri.
Typ pytania | Dane wejściowe odpowiedzi | Domyślny typ pola |
---|---|---|
integer | Dane wejściowe w postaci liczby całkowitej. | esriFieldTypeInteger |
decimal | Dane wejściowe w postaci dziesiętnej. | esriFieldTypeDouble |
zakres | Dane wejściowe w podanym zakresie liczbowym. | esriFieldTypeInteger |
text | Odpowiedź tekstowa. | esriFieldTypeString |
select_one list_name | Pytanie z wieloma możliwościami odpowiedzi, w którym można wybrać tylko jedną odpowiedź. Zastąp list_name nazwą listy wyboru. Można zmienić typ pola, jeśli jednak nazwa listy możliwości wyboru jest używana w wyrażeniach, jest ona zawsze traktowana w aplikacji terenowej jako ciąg znakowy. | esriFieldTypeString |
select_multiple list_name | Pytanie z wieloma możliwościami odpowiedzi, w którym można wybrać wiele odpowiedzi. Zastąp list_name nazwą listy wyboru. Nie można zmienić typu pola, ale jeśli nazwa listy możliwości wyboru jest używana w wyrażeniach, jest ona zawsze traktowana w aplikacji terenowej jako ciąg znakowy. | esriFieldTypeString |
rank list_name | Pytanie typu ranking; lista możliwości wyboru uporządkowana według rangi. Zastąp list_name nazwą listy wyboru. Nie można zmienić typu pola, ale jeśli nazwa listy możliwości wyboru jest używana w wyrażeniach, jest ona zawsze traktowana w aplikacji terenowej jako ciąg znakowy. | esriFieldTypeString |
note | Wyświetla na ekranie uwagę, nie wymaga danych wejściowych. Może także zawierać ukryte obliczenia. | esriFieldTypeString |
geopoint | Zbiera dane w postaci współrzędnych GPS pojedynczego punktu. Nie można zmienić typu pola. | esriFieldTypeGeometry |
geotrace | Rejestruje linię na mapie. Nie można zmienić typu pola. | esriFieldTypeGeometry |
geoshape | Rejestruje poligon na mapie. Nie można zmienić typu pola. | esriFieldTypeGeometry |
date | Dane wejściowe w postaci daty. | esriFieldTypeDate |
czas | Dane wejściowe w postaci czasu. | esriFieldTypeString |
dateTime | Dane wejściowe w postaci daty i czasu. | esriFieldTypeDate |
image | Zrób zdjęcie. | Załącznik |
begin group | Rozpoczyna grupę pytań. | Nie dotyczy |
end group | Kończy grupę pytań. | Nie dotyczy |
begin repeat | Rozpoczyna zestaw pytań powtarzalnych. | Nie dotyczy |
end repeat | Kończy zestaw pytań powtarzalnych. | Nie dotyczy |
oblicz | Wykonuje obliczenia na wartościach w formularzu. Ten typ pytania jest ukryty i nie jest widoczny w formularzu. | esriFieldTypeString |
username¹ | Po zalogowaniu się w usłudze ArcGIS Online lub w oprogramowaniu ArcGIS Enterprise w tym polu jest automatycznie umieszczana nazwa użytkownika konta. Ten typ pytania jest ukryty i nie jest widoczny w formularzu. | esriFieldTypeString |
email¹ | Po zalogowaniu się w usłudze ArcGIS Online lub w oprogramowaniu ArcGIS Enterprise w tym polu jest automatycznie umieszczany adres e-mail konta. Ten typ pytania jest ukryty i nie jest widoczny w formularzu. | esriFieldTypeString |
hidden | To pole nie jest widoczne w formularzu. Za pomocą kolumn bind::esri:fieldType i bind::esri:fieldLength można zdefiniować schemat danych. | esriFieldTypeString |
barcode | Zeskanuj kod paskowy. | esriFieldTypeString |
start | Data i czas rozpoczęcia ankiety. | esriFieldTypeDate |
end | Data i czas ukończenia ankiety. | esriFieldTypeDate |
deviceid | Unikalny identyfikator wygenerowany przez aplikację Survey123 reprezentujący konkretne urządzenie, na którym wypełniono ankietę. Nie jest to numer IMEI (International Mobile Equipment Identity) urządzenia przenośnego, ponieważ aplikacja Survey123 działa także na urządzeniach, które nie mają numeru IMEI. | esriFieldTypeString |
audio | Zarejestruj próbkę dźwięku. | Załącznik |
file | Prześlij plik na urządzenie. | Załącznik |
¹Bardziej elastyczną opcją pobierania wartości jest użycie funkcji pulldata("@property"). Patrz sekcja Właściwości urządzenia i użytkownika.
Przykładowy formularz Typy pytań zawiera wszystkie typy pytań obsługiwane przez aplikację ArcGIS Survey123. Informacje na temat sposobu reprezentacji pytań tego typu w kreatorze internetowym i aplikacji internetowej Survey123 można znaleźć także we wskazówkach aplikacji.
Metadane
W specyfikacji XLSForm dostępne są następujące opcje typów danych służące do zbierania metadanych:
Typ metadanych | Opis |
---|---|
start | Data i czas rozpoczęcia ankiety. |
end | Data i czas ukończenia ankiety. |
username | Zarejestruj nazwę użytkownika aktualnie zalogowanego w usłudze ArcGIS Online lub oprogramowaniu ArcGIS Enterprise. W przypadku tego typu danych dane wejściowe nie są wymagane. |
Zarejestruj adres e-mail użytkownika aktualnie zalogowanego w usłudze ArcGIS Online lub oprogramowaniu ArcGIS Enterprise. W przypadku tego typu danych dane wejściowe nie są wymagane. | |
deviceid | Unikalny identyfikator wygenerowany przez aplikację Survey123 reprezentujący konkretne urządzenie, na którym wypełniono ankietę. Nie jest to numer IMEI urządzenia mobilnego, ponieważ aplikacja Survey123 działa także na urządzeniach, które nie mają numeru IMEI. |
Notatka:
Następujące elementy metadanych standardu XLSForm nie są obsługiwane: subscriberid, simserial i phonenumber.
Aby zebrać wszystkie te metadane, dodaj na początku ankiety następujące elementy:
Opisane powyżej pozycje metadanych są automatycznie zbierane przez aplikację ArcGIS Survey123. Nie są one reprezentowane jako pytania w formularzu, ale po przesłaniu ankiety można będzie wyświetlić ich wartości.
Po dodaniu typu start (początek) lub end (koniec) aplikacja ArcGIS Survey123 automatycznie umożliwia rejestrowanie danych czasowych w warstwie obiektowej ankiety. Dzięki temu można filtrować zawartość ankiety na podstawie daty przesłania tych danych. Dodawanie pozycji start (początek) i end (koniec) jest także przydatne w sytuacji, gdy trzeba sprawdzić, ile dokładnie czasu minęło od momentu otwarcia formularza do momentu oznaczenia go jako ukończonego.
Wskazówki
Czasami istnieje potrzeba dodania do pytania w formularzu wskazówki, zawierającej porady przeznaczone dla użytkownika, dotyczące odpowiedzi na pytanie, ale wskazówka ta nie powinna być częścią pytania. W specyfikacji XLSForm można dodawać wskazówki do pytań. Dodaj kolumnę hint (wskazówka) i umieść w niej komunikat. Zapoznaj się z następującym przykładem:
Korzystając z kolumny guidance_hint, można dodać wskazówki do pytania. Wskazówki instruują użytkownika, jak odpowiedzieć na pytanie, ale są ukryte, dopóki nie naciśnie on przycisku wskazówek wyświetlanego obok podpowiedzi. Wskazówek można użyć tylko wówczas, gdy dla pytania istnieje już podpowiedź.
Tekst zastępczy
Można także podać tekst zastępczy dla pytań, które akceptują wpisywane dane wejściowe, takich jak pytania typu text (tekst), integer (liczba całkowita), decimal (wartość dziesiętna) oraz select_one (wybierz jedną) z wyglądem autocomplete (autouzupełnianie), ustawiając parametr placeholderText w kolumnie body::esri:style. Użycie parametru placeholderText=@[hint] lub placeholderText=@[guidance_hint] powoduje, że podpowiedź lub wskazówka zostaje ukryta, a tekst wskazówki jest umieszczany wewnątrz obszaru wejściowego pytania. Jeśli pytanie jest puste, w obszarze wejściowym jest wyświetlany tekst zastępczy.
Notatka:
Wskazówki nie są obsługiwane w przypadku pytań typu begin repeat (rozpocznij powtórzenie) i begin group (grupa początkowa).
W aplikacji internetowej Survey123 nie jest obsługiwany tekst zastępczy.
Aktualizacja szablonu
Szablon zaawansowany zawiera wszystkie obiekty XLSForm obsługiwane w aplikacji Survey123 i jest dostępny w oknie dialogowym Nowa ankieta w aplikacji Survey123 Connect. Ten szablon jest regularnie aktualizowany o nowe funkcje i usprawnienia procesu tworzenia ankiet. Wprawdzie bez problemu można nadal używać poprzedniej wersji szablonu, jednak aby skorzystać z najnowszych zmian, można zaktualizować istniejące ankiety do najnowszego szablonu XLSForm.
Narzędzie Aktualizuj szablon formularza XLSForm aktualizuje istniejący szablon XLSForm dla ankiet do najnowszej wersji zaawansowanego szablonu. Kopiuje ono zawartość arkuszy survey (ankieta), choices (możliwości wyboru) oraz settings (ustawienia) do ich odpowiednich wierszy i kolumn w nowym szablonie. Wszystkie dodane kolumny są również kopiowane do nowego szablonu, a jeśli używane są wybory zewnętrzne, kopiowany jest także arkusz external_choices (zewnętrzne możliwości wyboru).
Aby uruchomić narzędzie, należy skonfigurować środowisko Python w aplikacji Survey123 Connect. Więcej informacji na ten temat zawiera sekcja Konfigurowanie aplikacji Python.
W aplikacji Survey123 Connect otwórz ankietę do zaktualizowania. Kliknij Narzędzia, a następnie kliknij Aktualizuj szablon formularza XLSForm. Podczas działania narzędzia w oknie dialogowym są wyświetlane komunikaty. Po zakończeniu procesu plik .xlsx w folderze ankiety zostaje zaktualizowany do najnowszego szablonu, a podgląd formularza Survey123 Connect zostaje wczytany ponownie. Jeśli podczas działania narzędzia wystąpi błąd, istniejący szablon XLSForm zostanie zachowany.
Notatka:
Formularz XLSForm ankiety musi być plikiem .xlsx. Narzędzie Aktualizuj szablon formularza XLSForm nie może być uruchamiane na plikach .xls.
Zaleca się sprawdzenie, czy kolumny, weryfikacja danych, formatowanie komórek i style czcionek z pierwotnego formularza XLSForm są obecne w zaktualizowanym formularzu XLSForm. To narzędzie tworzy kopię zapasową formularza XLSForm i plik dziennika w katalogu C:\Users\<username>\ArcGIS\My Survey Designs\<surveyName>\debug\template_updater. Aby przywrócić ankietę z kopii zapasowej, skopiuj plik .xlsx z folderu template_updater do folderu głównego ankiety. Usuń istniejący formularz XLSForm i zmień nazwę kopii zapasowej na zgodną z pierwotną.
Notatka:
W zaktualizowanym szablonie kolor wypełnienia komórki w pierwszej kolumnie każdego wiersza jest stosowany do całego wiersza.
W przypadku ankiet wielojęzycznych kolumny języka domyślnego, takie jak label::language (xx) i hint::language (xx), zostaną wykluczone ze zaktualizowanego szablonu.